Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

FS#2167 - IPv6-connectivity is broken for local system via 6in4-tunnel #8234

Closed
openwrt-bot opened this issue Mar 6, 2019 · 2 comments
Closed
Labels

Comments

@openwrt-bot
Copy link

@openwrt-bot openwrt-bot commented Mar 6, 2019

vgaetera:

Issue description:
IPv6-connectivity is broken for local system via 6in4-tunnel.
Disabling source-routing is ignored.

System version:
OpenWrt 18.06.1

Steps to reproduce:

uci show network.wan6

network.wan6=interface
network.wan6.proto='6in4'
network.wan6.tunlink='wan'
network.wan6.peeraddr='216.66.88.98'
network.wan6.ipaddr='139.162.227.238'
network.wan6.ip6addr='2001:470:1f1c:2a6::2/64'
network.wan6.ip6prefix='2001:470:1f1d:2a2::/64'
network.wan6.sourcerouting='0'

ip -6 addr show 6in4-wan6

9: 6in4-wan6@eth0: <POINTOPOINT,NOARP,UP,LOWER_UP> mtu 1280 state UNKNOWN qlen 1000
inet6 2001:470:1f1c:2a6::2/64 scope global
valid_lft forever preferred_lft forever
inet6 fe80::8ba2:e3ee/64 scope link
valid_lft forever preferred_lft forever

ip -6 route show default table all

default from 2001:470:1f1c:2a6::/64 dev 6in4-wan6 proto static metric 1024 pref medium
default from 2001:470:1f1d:2a2::/64 dev 6in4-wan6 proto static metric 1024 pref medium

ip -6 route show dev 6in4-wan6

default from 2001:470:1f1c:2a6::/64 proto static metric 1024 pref medium
default from 2001:470:1f1d:2a2::/64 proto static metric 1024 pref medium
2001:470:1f1c:2a6::/64 proto kernel metric 256 pref medium
fe80::/64 proto kernel metric 256 pref medium

dig +short -q openwrt.org -t aaaa

2a03:b0c0:3:d0::1af1:1

ping6 -c 3 openwrt.org

connect: Permission denied

ip -6 route get 2a03:b0c0:3:d0::1af1:1

RTNETLINK answers: Permission denied

ping6 -c 3 -I 2001:470:1f1c:2a6::2 openwrt.org

PING openwrt.org(wiki-01.infra.openwrt.org) from 2001:470:1f1c:2a6::2 : 56 data bytes
64 bytes from wiki-01.infra.openwrt.org: icmp_seq=1 ttl=59 time=20.2 ms
64 bytes from wiki-01.infra.openwrt.org: icmp_seq=2 ttl=59 time=35.3 ms
64 bytes from wiki-01.infra.openwrt.org: icmp_seq=3 ttl=59 time=20.0 ms

--- openwrt.org ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2003ms
rtt min/avg/max/mdev = 20.006/25.190/35.340/7.177 ms

ip -6 route get 2a03:b0c0:3:d0::1af1:1 from 2001:470:1f1c:2a6::2

2a03:b0c0:3:d0::1af1:1 from 2001:470:1f1c:2a6::2 dev 6in4-wan6 proto static src 2001:470:1f1c:2a6::2 metric 1024 pref medium

@openwrt-bot
Copy link
Author

@openwrt-bot openwrt-bot commented Mar 20, 2019

treysis:

This is not broken only for local system. It seems it boils down to being unable to disable sourcerouting. You can't essentially use two different prefixes on the 6in4 tunnel interface. To be more specific: HE assigns you one /64, and if requested an additional /48. In theory, you could assign them to different interfaces on your OpenWrt system. However, with sourcerouting enabled, forwarding will only work for the one specified in "ip6prefix" in the "wan6" section of /etc/config/network.

The problem exists from at least Chaos Calmer. The problem DOESN'T exist with Kamikaze (which didn't use kmod-sit).

This is not working (only works if ip6prefix is set for wan6, and then only for that specific prefix):

#/etc/config/network

config interface 'loopback'
option ifname 'lo'
option proto 'static'
option ipaddr '127.0.0.1'
option netmask '255.0.0.0'

config interface 'lan'
option ifname 'eth0'
option force_link '1'
option type 'bridge'
option proto 'static'
option ipaddr '192.168.1.1'
option netmask '255.255.255.0'
option ip6addr '2001:470:xxyy::1/64'
option ip6prefix '2001:470:xxyy::/64'

config interface 'wan'
option ifname 'eth1'
option proto 'static'
option ipaddr 'x.x.x.19'
option netmask '255.255.255.0'
option gateway 'x.x.x.254'
option dns 'x.x.y.1 x.x.y.2'
option ip6addr '2001:470:xy:zzzz::1/64'
option ip6prefix '2001:470:xy:zzzz::/64'

config interface 'wan6'
option proto '6in4'
option ipaddr 'x.x.x.19'
option peeraddr '216.66.x.x'
option ip6addr '2001:470:xx:zzzz::2/64'
option sourcerouting '0'

@openwrt-bot
Copy link
Author

@openwrt-bot openwrt-bot commented Nov 18, 2020

vgaetera:

Resolved with OpenWrt 19.07.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

1 participant