Routing to internet addresses ending with 255
sonicy at otenet.gr
Fri May 16 10:45:15 UTC 2008
Nikos Vassiliadis wrote:
> On Friday 16 May 2008 12:32:35 Manolis Kiagias wrote:
>> I had this weird problem today, and I would like to know what caused it:
>> I have two home servers, on different locations, on two ADSL lines using
>> dynamic DNS. One is running Debian, the other FreeBSD 7.0-RELEASE.
>> I usually ssh from one to the other. Today, the debian server had a
>> public (internet) IP ending in 255. The FreeBSD 7.0 system refused to
>> communicate with it. Another 6.3 system had no problem. The 6.3 and 7.0
>> system have identical adsl routers.
>> Trying a traceroute from 7.0, it would seem the debian system was one
>> hop away, which is of course incorrect.
>> I understand that x.x.x.255 is ethernet's broadcast address.
> No, it's not. Since these days IP is classless, a network
> (and thus its broadcast address) is completely local information,
> not known to remote hosts. What might look to an external observer
> as a /24 network, may be something else. For example 18.104.22.168/24
> may be the broadcast address for net 22.214.171.124/24, but it's not the
> broadcast address for net 126.96.36.199/23, which would be 188.8.131.52.
> Also, regadless of being the broadcast address or not, to the external
> observer that address is just an IP address. The router of the network
> will handle specially(will broadcast) the packet if it's destined for the
> broadcast address.
I guessed it would be like this. Thank you for clarifying it.
>> However 6.3
>> had no problem connecting to it, while 7.0 would not. Has something
>> changed in FreeBSD, is this the intended behaviour or a bug?
> This looks like a bug. Can you post more info about it?
Problem is I've already reset the router that had the .255 address. All
other actions had no effect:
- Restarting the network interface in 7.0
- Restarting routing / erasing and reconfiguring routing table in 7.0
- Trying the IP address directly instead of the dyndns.org name (clearly
not any type of DNS problem)
- Restarting the router connected to 7.0
Traceroute gave a result like:
traceroute to xxx.dyndns.org (xxx.xxx.xxx.255), 64 hops max, 40 byte packets
1 xxx.dyndns.org (xxx.xxx.xxx.255) 1.008 ms 1.084 ms 0.928 ms
Clearly wrong, since everything goes through my router:
traceroute to www.otenet.gr (184.108.40.206), 64 hops max, 40 byte packets
1 router (192.168.0.55) 1.014 ms 0.948 ms 0.941 ms
2 athe10kt-l1.otenet.net (220.127.116.11) 19.399 ms 20.362 ms 19.892 ms
More information about the freebsd-questions