[Dnsmasq-discuss] It works: multiple dnsmasqs running

Gene Czarcinski gene at czarc.net
Mon Oct 15 15:48:45 BST 2012


On 10/15/2012 06:47 AM, Simon Kelley wrote:
> On 13/10/12 19:39, Gene Czarcinski wrote:
>
>> I again proved to myself that specifying listen-address=<ip4-address>
>> and listen-address=<ip6-address> does not work with dhcp6 whereas
>> specifying interface=eth0 does.  I am not sure how/why it seems to work
>> with dhcp4 (as demonstrated by libvirt) but not dhcp6.  BTW, there is
>> one difference: libvirt specifies --listen-address on the command line
>> whereas I had it in a conf file.
>
> conf-file versus command line will make no difference. Which address 
> are you using? the Link-local one or a globally-routed one?
I have tried both and it makes no difference.

I am using a manually configured IPv6 address.

I have done a "little" instrumentation o dnsmasq to attempt to locate 
the problem (that's "expert talk" for adding a whole bunch of my_syslog 
lines to to see what is going on and just what is being executed).  In 
fact, I have added a lot of lines which produce lots and lots of 
messages in syslog.

I believe I can see what the problem is but not necessarily how to fix 
it.  The reason that dhcp4 works and dhcp6 does not is that dhcp4 has a 
"fallback" when an interface is not specified.

I have looked at a lot of code so far and a lot of syslog files. I found 
the difference in dhcp_packet() versus dhcp6_packet() ... dhcp_packet() 
adds an async function complete_context() to make things work.  But, I 
have never done any socket programming before and it took me at least a 
little while to realize what is going on (or at least I believe that I 
do). [I was wonder why all those iface_check() calls where being made.]

When a ff00::1:2 dhcp6 packet arrived, dhcp6_packet() did not fined any 
entry for the incoming device in the daemon->if_names list, so it just 
drops the packet.

I am sure that you can come up with a solution much quicker than I can 
but I am going to continue looking into this to see if I can fix it.  
Like I said, I have never done any programming with sockets and this 
interests me.

Gene



More information about the Dnsmasq-discuss mailing list