Skip to content

BR does not send return traffic until Ipv6 Neighbor table is properly populated with CE device #386

@mzevnik

Description

@mzevnik

Hi

I have been testing a MAP-T support between openwrt nat46 as CE and Jool as BR. Configuration was done based on the map-t example from this page:

Version:
:~$ jool -V
4.1.255.3

Topology:
PC server (192.168.10.10)<->(192.168.10.24)BR(2001:db8:6::11b/64)<->(2001:db8:6::11b/64)CE(192.168.1.1)<->(192.168.1.10)PC Client

Test:
Ping or wget does not work because NDP does not have a proper entry:
2001:db8:6::11b dev enx000ec68ebd23 router INCOMPLETE

And NDP does not get populated by itself.
:~$ ip -6 neigh show dev enx000ec68ebd23
2001:db8:6::11b INCOMPLETE

After i do ndisc:
:$ ndisc6 2001:db8:6::11b enx000ec68ebd23;
Soliciting 2001:db8:6::11b (2001:db8:6::11b) on enx000ec68ebd23...
Target link-layer address: 7C:9F:07:00:B6:F2
from 2001:db8:6::11b
:
$ ip -6 neigh show dev enx000ec68ebd23
fe80::7e9f:7ff:fe00:b6f2 FAILED
2001:db8:6::11b lladdr 7c:9f:07:00:b6:f2 router REACHABLE

Everything works until ndp entry times out, after that we hit the issue again.

Is this a bug or static NDP entry is mandatory here?

Settings on CE:
:~# cat /proc/net/nat46/control
add map-wan6_map
config map-wan6_map local.v4 192.0.2.0/24 local.v6 2001:db8:ce::/51 local.style MAP local.ea-len 13 local.psid-offset 0 remote.v4 0.0.0.0/0 remote.v6 64:ff9b::/96 remote.style RFC6052 remote.ea-len 0 remote.psid-offset 0 debug 0

:~# ip -6 route
2001:db8:6::/64 dev eth0 proto kernel metric 256
2001:db8:ce:11b::c000:208:1b dev map-wan6_map proto static metric 1024
2001:db8:ce:11b::/64 dev br-lan proto static metric 1024

:~# ip a show dev eth0
3: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
link/ether 7c:9f:07:00:b6:f2 brd ff:ff:ff:ff:ff:ff
inet6 2001:db8:6::11b/64 scope global
valid_lft forever preferred_lft forever
inet6 fe80::7e9f:7ff:fe00:b6f2/64 scope link
valid_lft forever preferred_lft forever

Settings on BR:
:~$ sudo jool_mapt -i BR global display
manually-enabled: true
pool6: 64:ff9b::/96
lowest-ipv6-mtu: 1280
logging-debug: false
zeroize-traffic-class: false
override-tos: false
tos: 0
mtu-plateaus: 65535,32000,17914,8166,4352,2002,1492,1006,508,296,68
rfc6791v6-prefix: (unset)
rfc6791v4-prefix: (unset)
map-t-type: BR
end-user-ipv6-prefix: (unset)
bmr: (unset)

:~$ sudo jool_mapt -i BR fmrt display
+---------------------------------------------+--------------------+----------------+----+
| IPv6 Prefix | IPv4 Prefix | EA-bits Length | a |
+---------------------------------------------+--------------------+----------------+----+
| 2001:db8:ce::/51 | 192.0.2.0/24 | 13 | 0 |
+---------------------------------------------+--------------------+----------------+----+

Br,
Matej

Metadata

Metadata

Assignees

No one assigned

    Labels

    Status: StuckDevelopment paused due to unavailable external inputSupportUser needs help

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions