Re: Some question about IPv4 routes

From: Dimitry Andric <dim_at_FreeBSD.org>
Date: Mon, 05 Nov 2012 17:29:49 +0100
On 2012-11-05 17:21, Alexandre Martins wrote:
> Since FreeBSD 8.0, there is some changes about routing table, in particular
> the IPv4 'link-local' route.
>
> In my case, i have this config: em0 192.168.0.1 / 24
>
>
> In FreeBSD < 8, if I run 'route get 192.168.0.0', it tell me :
>
> =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
>     route to: 192.168.0.0
> destination: 192.168.0.0
>         mask: 255.255.255.0
>    interface: em0
>        flags: <UP,DONE,CLONING>
>   recvpipe  sendpipe  ssthresh  rtt,msec    rttvar  hopcount     mtu  expire
>         0         0         0         0         0         0      1500   -537398
> =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
>
> And in FreeBSD >= 8
>
> =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
> route: writing to routing socket: No such process
> =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

Maybe the command parsing got more strict?  It looks like you must add
the netmask to make it work:

   $ route -n get 192.168.0.0
   route: writing to routing socket: No such process

   $ route -n get 192.168.0.0/24
      route to: 192.168.0.0
   destination: 192.168.0.0
	 mask: 255.255.255.0
     interface: iflan
	flags: <UP,DONE>
    recvpipe  sendpipe  ssthresh  rtt,msec    mtu        weight    expire
	 0         0         0         0      1500         1         0

This is on stable/9.


> In addition, if I run a ping on network and broadcast address
>   (ping 192.168.0.0; ping 192.168.0.255)
>
> In Freebsd < 8, a new route was created and i can see it in
>   'netstat -rn -af inet'
>
> =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
> Internet:
> Destination        Gateway            Flags    Refs      Use  Netif Expire
> 192.168.0.0           ff:ff:ff:ff:ff:ff  UHLWb       1        1   em0 =>
> 192.168.0.255      ff:ff:ff:ff:ff:ff  UHLWb       1        1   em0 =>
> =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
>
> But not in FreeBSD >= 8
>
>
> So, why is the broadcast route not created in FreeBSD >= 8 ?

Apparently the route to 192.168.0.0/24 already covers both of them, so
there is no need anymore to add explicit ones.  I have no idea why this
changed after 8.x, though.
Received on Mon Nov 05 2012 - 15:29:52 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:40:31 UTC