loopback routes pinned by commit r326012 for FreeBSD 10 cannot be deleted

Andreas Longwitz longwitz at incore.de
Sat Feb 24 15:53:17 UTC 2018


> I mean, route(8). Please try this patch that restores its ability to manually remove such routes.
> 
> Index: sbin/route/route.c
> ===================================================================
> --- sbin/route/route.c  (revision 329903)
> +++ sbin/route/route.c  (working copy)
> @@ -1535,8 +1535,10 @@ rtmsg(int cmd, int flags, int fib)
>                         so[RTAX_IFP].ss_len = sizeof(struct sockaddr_dl);
>                         rtm_addrs |= RTA_IFP;
>                 }
> -       } else
> +       } else {
>                 cmd = RTM_DELETE;
> +               flags |= RTF_PINNED;
> +       }
>  #define rtm m_rtmsg.m_rtm
>         rtm.rtm_type = cmd;
>         rtm.rtm_flags = flags;
> 

OK, that works:

netstat -rn -->
Internet:
Destination        Gateway            Flags      Netif Expire
default            192.168.0.250      UGS         em0
10.1.2.0/24        link#2             U           em1
10.1.2.3           link#2             UHS         lo0
127.0.0.1          link#13            UH          lo0
192.168.0.0/24     link#1             U           em0
192.168.0.114      link#1             UHS         lo0

route delete 10.1.2.3 -->
delete host 10.1.2.3 fib 0

netstat -rn -->
Internet:
Destination        Gateway            Flags      Netif Expire
default            192.168.0.250      UGS         em0
10.1.2.0/24        link#2             U           em1
127.0.0.1          link#13            UH          lo0
192.168.0.0/24     link#1             U           em0
192.168.0.114      link#1             UHS         lo0


Andreas Longwitz



More information about the freebsd-net mailing list