4

On one particular box, i cannot get responses to broadcasted messages to (255.255.255.255). For example

Sending DHCPDISCOVER

DHCPREQUEST on wlan0 to 255.255.255.255

And see even responses from DHCP server on this network

DHCPOFFER from 10.0.1.1

But actual interface is not receiving it. It works on all other interfaces and also on other boxes on the same network. This box has fresh minimal Debian, no firewall.

What can it be?

PS: The problem is not only with DHCP (even if client is not getting ip because of it). But any message sent to 255.255.255.255 and being responded reaches box, but cannot be read from the interface.

Here the output on netstat -g for this interface

wlan0           1      224.0.0.251
wlan0           1      all-systems.mcast.net

Update 1: As per request here routing tables of this interface

**me@host:~ $ ip address show dev wlan0**
3: wlan0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether *[MAC]* brd ff:ff:ff:ff:ff:ff
    inet 192.168.10.3/24 brd 192.168.10.255 scope global wlan0
       valid_lft forever preferred_lft forever
**me@host:~ $ ip route show dev wlan0**
192.168.10.0/24 proto kernel scope link src 192.168.10.3
**me@host:~ $ ip route show dev wlan0 table local**
broadcast 192.168.10.0 proto kernel scope link src 192.168.10.3
local 192.168.10.3 proto kernel scope host src 192.168.10.3
broadcast 192.168.10.255 proto kernel scope link src 192.168.10.3

But when remote endpoint replies to zero network multicast (e.g. 255.255.255.255 or 192.168.10.255) I see packets coming and cannot handle it (e.g. netcat -ul 192.168.10.3 68 not responding)

IP (tos 0x0, ttl 64, id 11512, offset 0, flags [DF], proto UDP (17), length 76)
    192.168.10.3.68 > 192.168.10.255.67: UDP, length 48
IP (tos 0x0, ttl 64, id 509, offset 0, flags [none], proto UDP (17), length 156)
    192.168.10.1.67 > 192.168.10.3.68: UDP, length 128
8
  • Does traffic in general work over this interface? Could just be that the interface (or more likely the drivers for it) are broken.
    – derobert
    Oct 12 '17 at 21:56
  • yes, i see traffic, but cannot handle it.
    – Tamir
    Oct 12 '17 at 21:59
  • it looks like for some reason local ip cannot be added to this multicast group local ip is 194.168.10.3, remote 194.168.10.1 as you can see, remote responses but i cannot get the packet on local 21:52:05.177243 IP (tos 0x0, ttl 64, id 54607, offset 0, flags [DF], proto UDP (17), length 76) 192.168.10.3.50263 > 255.255.255.255.80: UDP, length 48 21:52:05.198673 IP (tos 0x0, ttl 64, id 362, offset 0, flags [none], proto UDP (17), length 156) 192.168.10.1.80 > 192.168.10.3.50263: UDP, length 128
    – Tamir
    Oct 12 '17 at 22:02
  • 255.255.255.255 isn't a multicast group AFAIK. I'm not quite clear on your answer—if you configure a static unicast IP address on this interface, does it work? That is, can you ping/ssh/etc. over it?
    – derobert
    Oct 12 '17 at 22:32
  • 255.255.255.255 is "catch any". I gave static ip address to this interface, since DHCP is not working as you can see. Now i am listening on this interface and using it as unicast target. It does not work. I see traffic coming on network, but UDP client is unable to see it. Ping also not works (again, i see traffic, i see the other device ip, but cannot get to it (even if it is in the same subnet.
    – Tamir
    Oct 12 '17 at 22:46
1

Well, the issue is solved. It was actually related to something, which I not quite understand. Basically, in addition to regular route, for some reason, in order to enable reading from unicasting endpoint, i should add default route, source and metrics. So following fully solves the issue for 192.168.10.3/24 network

ip route add default via 192.168.10.1 src 192.168.10.3 metric 303 dev wlan0
ip route add 192.168.10.0/24 via 192.168.10.1 src 192.168.10.3 metric 303 dev wlan0

Not sure though, why kernel route is not enough...

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.