Я обнаружил, что не могу запустить собственный интерфейс IPV6 (на eth0) с туннелем 6to4 (на tun6to4) вместе.
Вот моя настройка (/ etc / network / interfaces /):
auto eth0
auto bond0
iface eth0 inet static
address 57.164.26.201
netmask 255.255.255.0
network 57.164.26.0
broadcast 57.164.26.255
gateway 57.164.26.254
iface eth0 inet6 static
address 2001:5f45:2:1973::2
netmask 64
post-up /sbin/ip -6 r add default via 2001:5f45:2:19ff:ff:ff:ff:ff dev eth0
iface bond0 inet static
address 57.164.25.173
netmask 255.255.255.0
когда я ping6 -I eth0 google.com - я получаю:
PING google.com(iad23s40-in-x0e.1e100.net) from 2001:5f45:2:1973::3 eth0: 56 data bytes
64 bytes from iad23s40-in-x0e.1e100.net: icmp_seq=1 ttl=55 time=81.1 ms
64 bytes from iad23s40-in-x0e.1e100.net: icmp_seq=2 ttl=55 time=81.1 ms
64 bytes from iad23s40-in-x0e.1e100.net: icmp_seq=3 ttl=55 time=81.0 ms
64 bytes from iad23s40-in-x0e.1e100.net: icmp_seq=4 ttl=55 time=81.0 ms
64 bytes from iad23s40-in-x0e.1e100.net: icmp_seq=5 ttl=55 time=81.0 ms
^C
--- google.com ping statistics ---
5 packets transmitted, 5 received, 0% packet loss, time 4005ms
rtt min/avg/max/mdev = 81.082/81.099/81.123/0.312 ms
После того, как я запустил это:
/sbin/ip tunnel add tun6to4 mode sit ttl 62 remote any local 57.164.25.173
/sbin/ip link set dev tun6to4 up
/sbin/ip -6 addr add 2002:39a4:19ad::1/16 dev tun6to4
/sbin/ip -6 route add 2000::/3 via ::192.88.99.1 dev tun6to4 metric 1
Я получил 100% потерю пакетов на обоих пингах интерфейса IPV6 (хотя иногда несколько пакетов достигают ipv6 Google ..).
/etc/sysctl.conf
net.ipv6.conf.eth0.disable_ipv6=0
net.ipv6.conf.eth0.autoconf=1
net.ipv6.conf.eth0.accept_ra=1
net.ipv6.conf.eth0.accept_ra_defrtr=1
Я нашел этот скрипт в /etc/network/if-up.d/ipv6-routes
#!/bin/sh
# This script sets up the IPv6 connectivity by setting the default route.
# Matching entries in /etc/network/interfaces might not work when the boot
# process is parallelized, because eth0 is not up
# quickly enough.
[ -n "${ADDRFAM}" -a "${ADDRFAM}" != 'inet6' ] && exit 0
[ -n "${IFACE}" -a "${IFACE}" != "eth0" ] && exit 0
sleep 5
/sbin/ip -family inet6 route add 2001:5f45:2:19ff:ff:ff:ff:ff dev eth0
/sbin/ip -family inet6 route add default via 2001:5f45:2:19ff:ff:ff:ff:ff
exit 0
Кажется, что из-за различных маршрутов возникает такая ситуация, что ни один из них не работает правильно. Как я могу это решить? Пожалуйста помоги. Запуск Debian 7 Wheezy.
РЕДАКТИРОВАТЬ: Я нашел простое решение для 6to4: / etc / network / interfaces /
auto 6to4
iface 6to4 inet6 6to4
local 57.164.25.173
ifup 6to4
И после ifup 6to4 в консоли я запускаю это:
echo "200 sixtofour" >> /etc/iproute2/rt_tables
ip -6 rule add from 2002::/16 table sixtofour
ip -6 route add 2002::/16 dev 6to4 table sixtofour
ip -6 route add default via ::192.88.99.1 dev 6to4 table sixtofour
После этого как собственный интерфейс, так и интерфейс 6to4 ipv6 могут, наконец, ping6 google.com ...
Но .. похоже, еще не конец. У меня небольшой% (от 0 до 3-5 или даже 10-12% в некоторых попытках) потери пакетов на любом интерфейсе ipv6. В некоторых тестах ping6 он работает очень гладко и без ошибок, но иногда я получал 1 из 10-11 потерянных пакетов. Я знаю, что моя производительность 6to4 очень сильно зависит от нескольких общедоступных ретрансляторов 6to4 в Интернете для произвольного адреса, поэтому практически невозможно выяснить, какой ретранслятор может вызывать потерю пакетов ... И это может быть действительно лучший способ переключиться для туннельного брокера. Но я также знаю, что есть люди, которые используют и брокеры туннелей ipv6, и интерфейсы 6to4 одновременно, И есть даже намного больше СЛОЖНЫХ настроек с различными дополнительными устройствами.
Кажется, что сетевая маршрутизация в Linux очень важна для таких настроек, и я в этом немного новичок.
Кстати: что я также нашел
Interrupt:20 Memory:fe500000-fe520000
строка в eth0, когда я запускаю ifconfig в консоли.
Я просто надеюсь, что осталось несколько вещей, которые можно исправить, например:
и / или еще "немного"?
Я очень ценю любую помощь.
КОНЕЦ ЧАСТИ 2. Продолжение следует
Попробуйте использовать брокер туннелей 6in4 для подключения IPv6. Это более надежно и в этом случае сработает. Брокеры, о которых я знаю, предлагают бесплатные туннели.
Обновление происходит быстро и относительно безболезненно. Я уже много лет использую 6in4 с IPv6 на eth0.