Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 05 Nov 2012 17:29:49 +0100
From:      Dimitry Andric <dim@FreeBSD.org>
To:        Alexandre Martins <alexandre.martins@netasq.com>
Cc:        freebsd-current@freebsd.org
Subject:   Re: Some question about IPv4 routes
Message-ID:  <5097E97D.80304@FreeBSD.org>
In-Reply-To: <8632523.6dTPfJQh0d@pc-alex.netasq.com>
References:  <8632523.6dTPfJQh0d@pc-alex.netasq.com>

next in thread | previous in thread | raw e-mail | index | archive | help
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.



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?5097E97D.80304>