[Dnsmasq-discuss] Compile with HAVE_IPSET on kernel 3.0.x problem

Punk[D.M] punkdm at gmail.com
Sat Feb 15 20:41:15 UTC 2014


Yes, i am sure the ipset main function is working:














*[RT-N56U:/opt/home/admin]$ ipset -Hipset
v6.19.......and:[RT-N56U:/opt/home/admin]$ ipset -L gfwlistName:
gfwlistType: hash:ipRevision: 1Header: family inet hashsize 1024 maxelem
65536Size in memory: 8264References: 1Members:*

I found something, but i'm not sure it is worse to think:

On my other router that running Tomato firmware(ipset v4.5 and Linux kernel
2.6.22.19), ipset with dnsmasq working fine, from netstat -lnp , i can see
dnsmasq have a RAW Proto standing:





*udp        0      0 0.0.0.0:43000 <http://0.0.0.0:43000>
0.0.0.0:*                           5590/eapd          raw        0      0
0.0.0.0:255 <http://0.0.0.0:255>             0.0.0.0:*
7           12439/dnsmasq      raw        0      0 0.0.0.0:255
<http://0.0.0.0:255>             0.0.0.0:*               7
16777/pppd         raw        0      0 0.0.0.0:255
<http://0.0.0.0:255>             0.0.0.0:*               7
4011/socat         raw        0      0 0.0.0.0:255
<http://0.0.0.0:255>             0.0.0.0:*               7
1231/ss-local *

but on this RT-N56U system, none of RAW exist:






*udp        0      0 192.168.1.1:138 <http://192.168.1.1:138>
0.0.0.0:*                           673/nmbd           udp        0      0
0.0.0.0:138 <http://0.0.0.0:138>
0.0.0.0:*                           673/nmbd           udp        0      0
192.168.1.1:48066 <http://192.168.1.1:48066>
0.0.0.0:*                           544/miniupnpd      Active UNIX domain
sockets (only servers)Proto RefCnt Flags       Type       State
I-Node PID/Program name    Pathunix  2      [ ACC ]     STREAM
LISTENING     973    786/pdnsd           /var/cache/pdnsd/pdnsd.status*

I pay attention to the RAW because i found the error string from ipset.c
next section:










*  if (old_kernel && (ipset_sock = socket(AF_INET, SOCK_RAW, IPPROTO_RAW))
!= -1)    return;   if (!old_kernel &&      (buffer = safe_malloc(BUFF_SZ))
&&      (ipset_sock = socket(AF_NETLINK, SOCK_RAW, NETLINK_NETFILTER)) !=
-1 &&      (bind(ipset_sock, (struct sockaddr *)&snl, sizeof(snl)) !=
-1))    return;   die (_("failed to create IPset control socket: %s"),
NULL, EC_MISC);*

It is about RAW check or something? I am a total novice of C language...

It's first time i use mail list, it's right to reply all?


2014-02-16 2:58 GMT+08:00 Hartmut Krafft <hartmut at mail.ru>:

> Hi!
> Do you have ipset installed correctly? You need a kernel module and an
> admin program called ipset. You first need to create your ipsets using this
> program (man ipset). Only then you can use them in dnsmasq. You can check
> if the IP set was created correctly by issuing ipset -l gfwlist (or another
> name).
> But I think you are missing the basic ipset support in your system. You
> should have got an error creating the empty IP sets, though...
>
> On Feb 15, 2014 6:50 PM, "Punk[D.M]" <punkdm at gmail.com> wrote:
> >
> > After i compile a ASUS RT-N56U/N65U/N14U custom firmware 3.X.3.7-079 by
> Padavan(https://code.google.com/p/rt-n56u/) with HAVE_IPSET on
> kernel-3.0.x (or kernel-3.4.x),
> >
> >
> > reboot the router and i got this error in log:
> >
> > dnsmasq[515]:failed to create IPset control socket: Protocol not
> supported
> >
> > and dnsmasq failed to start.
> >
> > I had some ipset setting in dnsmasq config:
> >
> >
> >
> > ipset=/youtube.com/gfwlist
> >
> > ipset=/twitter.com/gfwlist
> >
> > ...etc
> >
> > Any suggest with this? Thanks!
> >
> >
> >
> > Sorry my english!
> >
> >
> >
> >
> >
> _______________________________________________
> Dnsmasq-discuss mailing list
> Dnsmasq-discuss at lists.thekelleys.org.uk
> http://lists.thekelleys.org.uk/mailman/listinfo/dnsmasq-discuss
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.thekelleys.org.uk/pipermail/dnsmasq-discuss/attachments/20140216/1f17d342/attachment-0001.html>


More information about the Dnsmasq-discuss mailing list