Portál AbcLinuxu, 6. května 2025 16:23
/sbin/ip tunnel add tun6to4 mode sit remote any local 192.168.2.221 ttl 64
/sbin/ip link set dev tun6to4 up
/sbin/ip -6 addr add 2002:5f69:c87a::0951:0520:0122/128 dev tun6to4
/sbin/ip -6 route add 2000::/3 via ::192.88.99.1 dev tun6to4 metric 1
Výsledkom je priradenie adries:
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 16436 qdisc noqueue state UNKNOWN
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UNKNOWN qlen 1000
link/ether 00:13:d3:60:f7:ae brd ff:ff:ff:ff:ff:ff
inet 192.168.2.221/24 brd 192.168.2.255 scope global eth0
inet6 fe80::213:d3ff:fe60:f7ae/64 scope link
valid_lft forever preferred_lft forever
3: sit0: <NOARP> mtu 1480 qdisc noop state DOWN
link/sit 0.0.0.0 brd 0.0.0.0
4: tun6to4: <NOARP,UP,LOWER_UP> mtu 1480 qdisc noqueue state UNKNOWN
link/sit 192.168.2.221 brd 0.0.0.0
inet6 2002:5f69:c87a::951:520:122/64 scope global
valid_lft forever preferred_lft forever
inet6 ::192.168.2.221/128 scope global
valid_lft forever preferred_lft forever
a routovanie:
::/96 via :: dev tun6to4 metric 256 mtu 1480 advmss 1420 hoplimit 0
2002:5f69:c87a::951:520:122 dev tun6to4 proto kernel metric 256 mtu 1480 advmss 1420 hoplimit 0
2000::/3 via ::192.88.99.1 dev tun6to4 metric 1 mtu 1480 advmss 1420 hoplimit 0
fe80::/64 dev eth0 proto kernel metric 256 mtu 1500 advmss 1440 hoplimit 0
fe80::/64 dev tun6to4 proto kernel metric 256 mtu 1480 advmss 1420 hoplimit 0
ff00::/8 dev eth0 metric 256 mtu 1500 advmss 1440 hoplimit 0
ff00::/8 dev tun6to4 metric 256 mtu 1480 advmss 1420 hoplimit 0
Eth0 na tom stroji robí spojenie aj do LAN aj cez 6to4 tunel von. Potom som na tom stroji spustil radvd s nasledovným nastavením:
interface eth0
{
AdvSendAdvert on;
MinRtrAdvInterval 3;
MaxRtrAdvInterval 10;
AdvDefaultPreference low;
AdvHomeAgentFlag off;
prefix 2002:5f69:c87a::/64
{
AdvOnLink on;
AdvAutonomous on;
AdvRouterAddr off;
AdvPreferredLifetime 120;
AdvValidLifetime 300;
};
};
Vďaka tomu teraz na inom stroji v LAN (volajme ho 'client') zafunguje autokonfigurácia a dostane IP adresy:
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 16436 qdisc noqueue state UNKNOWN
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
link/ether 00:17:42:1d:93:f1 brd ff:ff:ff:ff:ff:ff
inet 192.168.2.194/24 brd 192.168.2.255 scope global eth0
inet6 2002:5f69:c87a:0:217:42ff:fe1d:93f1/64 scope global dynamic
valid_lft 300sec preferred_lft 120sec
inet6 fe80::217:42ff:fe1d:93f1/64 scope link
valid_lft forever preferred_lft forever
A routovanie:
2002:5f69:c87a::/64 dev eth0 proto kernel metric 256 expires 292sec mtu 1500 advmss 1440 hoplimit 0
fe80::/64 dev eth0 proto kernel metric 256 mtu 1500 advmss 1440 hoplimit 0
default via fe80::213:d3ff:fe60:f7ae dev eth0 proto kernel metric 1024 expires 22sec mtu 1500 advmss 1440 hoplimit 64
Problém je v tom, že client nedokáže pingnúť von.
Ak sa nemýlim tak, klient správne pošle ping request serveru, ten ho forwardne von a dostane naň odpoveď. Ale potom, ako keby už ping reply nebola forwardnutá clientovi.
Skúšal som ručne pridať route:
ip -6 route add 2002:5f69:c87a::/64 via fe80::213:d3ff:fe60:f7ae dev eth0
A overenie routovania
ip -6 route get 2002:5f69:c87a:0:217:42ff:fe1d:93f1
povie
2002:5f69:c87a:0:217:42ff:fe1d:93f1 via fe80::213:d3ff:fe60:f7ae dev eth0 src 2002:5f69:c87a::951:520:122 metric 1024 mtu 1500 advmss 1440 hoplimit 0
Ale IPv6 spojenie z klienta von nechodí. Vie mi niekto povedať, v čom tkvie problém?
Řešení dotazu:
# ip addr show dev eth0
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UNKNOWN qlen 1000
link/ether 00:13:d3:60:f7:ae brd ff:ff:ff:ff:ff:ff
inet 192.168.2.221/24 brd 192.168.2.255 scope global eth0
inet6 fe80::213:d3ff:fe60:f7ae/64 scope link valid_lft forever preferred_lft forever
# ip addr show dev tun6to4
7: tun6to4: <NOARP,UP,LOWER_UP> mtu 1480 qdisc noqueue state UNKNOWN
link/sit 192.168.2.221 brd 0.0.0.0
inet6 2002:5f69:c87a:1:0:951:520:122/128 scope global valid_lft forever preferred_lft forever
inet6 ::192.168.2.221/128 scope global valid_lft forever preferred_lft forever
# ip -6 route show
::/96 via :: dev tun6to4 metric 256 mtu 1480 advmss 1420 hoplimit 0
2002:5f69:c87a:1:0:951:520:122 dev tun6to4 proto kernel metric 256 mtu 1480 advmss 1420 hoplimit 0
2000::/3 via ::192.88.99.1 dev tun6to4 metric 1 mtu 1480 advmss 1420 hoplimit 0
fe80::/64 dev eth0 proto kernel metric 256 mtu 1500 advmss 1440 hoplimit 0
fe80::/64 dev tun6to4 proto kernel metric 256 mtu 1480 advmss 1420 hoplimit 0
ff00::/8 dev eth0 metric 256 mtu 1500 advmss 1440 hoplimit 0
ff00::/8 dev tun6to4 metric 256 mtu 1480 advmss 1420 hoplimit 0
Stále nič. Ak sa spýtam ako sa routuje na adresu klienta, tak dostanem:
# ip -6 route get 2002:5f69:c87a:0:217:42ff:fe1d:93f1
2002:5f69:c87a:0:217:42ff:fe1d:93f1 via ::192.88.99.1 dev tun6to4
src 2002:5f69:c87a:1:0:951:520:122 metric 1 mtu 1480 advmss 1420 hoplimit 0
To asi nie je dobre, však.
Aj keď urobím:
ip -6 route add 2002:5f69:c87a:0:217:42ff:fe1d:93f1 via fe80::213:d3ff:fe60:f7ae dev eth0
Tak síce dostanem:
ip -6 route get 2002:5f69:c87a:0:217:42ff:fe1d:93f1
2002:5f69:c87a:0:217:42ff:fe1d:93f1 via ::192.88.99.1 dev tun6to4
src 2002:5f69:c87a:1:0:951:520:122 metric 1 mtu 1480 advmss 1420 hoplimit 0
Ale aj tak nič.
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.