[Xorp-users] Bugs? recursive malloc, fib2mrib doesn't update nexthop vif, and PIM RP never initiates a Register-Stop
A.H.T
ahthamrin at gmail.com
Thu Aug 24 22:53:05 PDT 2006
On 8/22/06, Pavlin Radoslavov <pavlin at icir.org> wrote:
>
> Interesting. Could you send me the "route add/change/delete" commands
> how to replicate the problem.
I added debugging code in routing_socket_utils.cc to show the netmask value.
I used route add command to add AAAA:BBBB:fad:dead:bee8::/77 prefix
route. After that, zebra deleted AAAA:BBBB:10a::/64 route, but the
routing socket sends a netmask with masklen /77, which I believe is
what's left from my route add command.
%route -n add -inet6 AAAA:BBBB:fad:dead:bee8:: -prefixlen 77
fe80::2e0:81ff:fe02:fa52%em0
add net AAAA:BBBB:fad:dead:bee8::: gateway fe80::2e0:81ff:fe02:fa52%em0
[ 2006/08/25 10:40:44 ERROR xorp_fea:18632 FEA +512
routing_socket_utils.cc rtm_get_to_fte_cfg ] RTM type: 1 prefix
AAAA:BBBB:fad:dead:bee8:: mask ffff:ffff:ffff:ffff:fff8:0:603:600
masklen 77 nexthop fe80::2e0:81ff:fe02:fa52
[ 2006/08/25 10:44:03 ERROR xorp_fea:18632 FEA +512
routing_socket_utils.cc rtm_get_to_fte_cfg ] RTM type: 2 prefix
AAAA:BBBB:10a:: mask :: masklen 77 nexthop fe80::2e0:81ff:fe02:fa52
[ 2006/08/25 10:44:03 WARNING xorp_fib2mrib XrlFib2mribTarget ]
Handling method for fea_fib_client/0.1/delete_route6 failed:
XrlCmdError 102 Command failed Cannot delete route for
AAAA:BBBB:10a::/77: no such route
[ 2006/08/25 10:44:03 ERROR xorp_fea:18632 FEA +550 xrl_fti.cc
send_fib_client_route_change_cb ] Error sending route change to
fib2mrib: 102 Command failed Cannot delete route for
AAAA:BBBB:10a::/77: no such route
[ 2006/08/25 10:44:04 ERROR xorp_fea:18632 FEA +512
routing_socket_utils.cc rtm_get_to_fte_cfg ] RTM type: 1 prefix
AAAA:BBBB:10a:: mask :: masklen 64 nexthop fe80::2e0:81ff:fe02:fa52
So based on this observation, it seems that the kernel only gives good
netmask value in n * 32bits boundary.
> This might not be the right solution, because sometimes the IPv6
> prefix length can be legitimately bigger than 64. E.g., the loopback
> ::1 address has prefix length of 128.
AFAIK, a link prefix in the global unicast routing address space is
/64. So there should be no prefixlen > 64, right? Need to confirm with
the spec, though.
for ::1/128 (host route), isn't it handled by
if (rtm->rtm_type & RTF_HOST) {
if (dst_mask_len == 0)
dst_mask_len = IPvX::addr_bitlen(family);
}
?
regards,
--
<husni>
More information about the Xorp-users
mailing list