[Dnsmasq-discuss] Incorrect broadcast address given

OB Lutz ob.lutz at gmail.com
Wed Oct 8 15:51:54 BST 2008


# ip addr show
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 16436 qdisc noqueue state UNKNOWN
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 brd 127.255.255.255 scope host lo
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast
state UP qlen 100
    link/ether 00:d0:12:09:91:52 brd ff:ff:ff:ff:ff:ff
3: eth1: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc pfifo_fast
state DOWN qlen 100
    link/ether 00:d0:12:19:91:52 brd ff:ff:ff:ff:ff:ff
4: br-lan: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue
state UNKNOWN
    link/ether 00:d0:12:09:91:52 brd ff:ff:ff:ff:ff:ff
    inet 192.168.8.225/27 brd 192.168.8.255 scope global br-lan
5: wifi0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast
state UNKNOWN qlen 1000
    link/ieee802.11 00:15:6d:63:d4:31 brd ff:ff:ff:ff:ff:ff
6: ath0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast
state UP qlen 1000
    link/ether 00:15:6d:63:d4:31 brd ff:ff:ff:ff:ff:ff
    inet 192.168.8.226/32 brd 255.255.255.255 scope global ath0
7: bmf0: <POINTOPOINT,MULTICAST,NOARP,UP,LOWER_UP> mtu 1500 qdisc
pfifo_fast state UNKNOWN qlen 500
    link/[65534]
    inet 192.168.8.226/32 brd 192.168.8.226 scope global bmf0


On Wed, Oct 8, 2008 at 9:58 AM, Simon Kelley <simon at thekelleys.org.uk> wrote:
> OB Lutz wrote:
>>
>> The routing is fine. All the eth*s are bridged to br-lan, which is
>> given 192.168.8.225/27 (255.255.255.224). ath0 is 192.168.8.226/27,
>> ath1 192.168.8.227/27. iptables rules take care of forwarding
>> appropriate traffic around. Routing is not an issue.
>>
>> Shoving various log messages into dnsmasq, i could see that when going
>> through the block of code at dhcp.c: complete_context,line 404-405
>>
>> if (is_same_net(broadcast, context->start, context->netmask))
>>                    context->broadcast = broadcast;
>>
>> Prior to sending the response back, dnsmasq would pass through here
>> about 4 times. Most passes the correct 192.168.8.255 broadcast address
>> would be put in context->broadcast, but the final pass always put in
>> the incorrect 192.168.8.226. I assume the only pass with relevance to
>> the broadcast address offered in  dnsmasq's response was the last one.
>
> That code gets called for each address associated with each interface. Maybe
> you have more than one address set up on the interface, with a different
> broadcast address for some. What does
>
> ip addr show
>
> return?
>
>>
>> Now, I'm no expert in the ways of dnsmasq so maybe I'm just not seeing
>> something thats blatantly obvious to all of you. But seeing as how
>> dhcp is dhcp and ip routing is ip routing, why would my network setup
>> have any influence on the address dnsmasq gives for broadcast? If i
>> tell it to give addresses in the range of 192.168.8.230 through
>> 192.168.8.254 with a mask of 255.255.255.224, why should it do any
>> different? It happily respects my configuration when I force the
>> broadcast address, why should it ignore my other configs?
>>
> If you don't explicitly configure it, it tries to use the interface
> configuration. To understand why it's doing what it is, we need to know what
> that is.
>
> Cheers,
>
> Simon.
>
>
>
> _______________________________________________
> Dnsmasq-discuss mailing list
> Dnsmasq-discuss at lists.thekelleys.org.uk
> http://lists.thekelleys.org.uk/mailman/listinfo/dnsmasq-discuss
>



More information about the Dnsmasq-discuss mailing list