Назад | Перейти на главную страницу

IPv6 - Нет маршрута к хосту (113)

Я пытаюсь подключить в IPv6 два модуля (клиент и сервер) через маршрутизатор. Он работает в IPv4, но не в IPv6.

Вот конфигурация роутера:

$ ifconfig
eno1: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
    inet 10.40.56.26  netmask 255.255.255.0  broadcast 10.40.56.255
    inet6 fe80::47dc:3b02:90de:2030  prefixlen 64  scopeid 0x20<link>
    ether 18:31:bf:e0:2c:4f  txqueuelen 1000  (Ethernet)
    RX packets 28116  bytes 3152995 (3.0 MiB)
   RX errors 0  dropped 0  overruns 0  frame 0
    TX packets 5440  bytes 3745444 (3.5 MiB)
    TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
    device interrupt 16  memory 0xa1300000-a1320000

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
    inet 127.0.0.1  netmask 255.0.0.0
    inet6 ::1  prefixlen 128  scopeid 0x10<host>
    loop  txqueuelen 1000  (Local Loopback)
    RX packets 14900  bytes 1346088 (1.2 MiB)
    RX errors 0  dropped 0  overruns 0  frame 0
    TX packets 14900  bytes 1346088 (1.2 MiB)
    TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

tun0: flags=4305<UP,POINTOPOINT,RUNNING,NOARP,MULTICAST>  mtu 1500
    inet 192.168.2.1  netmask 255.255.255.0  destination 192.168.2.1
    inet6 fe80::4fe5:b420:b2db:cdab  prefixlen 64  scopeid 0x20<link>
    unspec 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00  txqueuelen 500 (UNSPEC)
    RX packets 7  bytes 308 (308.0 B)
    RX errors 0  dropped 0  overruns 0  frame 0
    TX packets 27  bytes 1412 (1.3 KiB)
    TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

tun1: flags=4305<UP,POINTOPOINT,RUNNING,NOARP,MULTICAST>  mtu 1500
    inet6 2001:468:3000:1::  prefixlen 48  scopeid 0x0<global>
    inet6 fe80::476b:d7be:189f:c9ee  prefixlen 64  scopeid 0x20<link>
    unspec 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00  txqueuelen 500  (UNSPEC)
    RX packets 15  bytes 960 (960.0 B)
    RX errors 0  dropped 0  overruns 0  frame 0
    TX packets 14  bytes 672 (672.0 B)
    TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

tun2: flags=4305<UP,POINTOPOINT,RUNNING,NOARP,MULTICAST>  mtu 1500
    inet 192.168.4.1  netmask 255.255.255.0  destination 192.168.4.1
    inet6 2001:468:3000:1::  prefixlen 48  scopeid 0x0<global>
    inet6 fe80::7d63:28af:13a7:6813  prefixlen 64  scopeid 0x20<link>
    unspec 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00  txqueuelen 500  (UNSPEC)
    RX packets 33  bytes 2364 (2.3 KiB)
    RX errors 0  dropped 0  overruns 0  frame 0
    TX packets 14  bytes 672 (672.0 B)
    TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

tun3: flags=4305<UP,POINTOPOINT,RUNNING,NOARP,MULTICAST>  mtu 1500
    inet 192.168.5.1  netmask 255.255.255.0  destination 192.168.5.1
    inet6 fe80::1a60:3195:6e42:c469  prefixlen 64  scopeid 0x20<link>
    inet6 2001:468:4000:1::  prefixlen 48  scopeid 0x0<global>
    unspec 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00  txqueuelen 500  (UNSPEC)
    RX packets 0  bytes 0 (0.0 B)
    RX errors 0  dropped 0  overruns 0  frame 0
    TX packets 14  bytes 672 (672.0 B)
    TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

tun4: flags=4305<UP,POINTOPOINT,RUNNING,NOARP,MULTICAST>  mtu 1500
    inet 192.168.2.1  netmask 255.255.255.0  destination 192.168.2.1
    inet6 fe80::fca3:d3a9:2352:e365  prefixlen 64  scopeid 0x20<link>
    unspec 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00  txqueuelen 500  (UNSPEC)
    RX packets 0  bytes 0 (0.0 B)
    RX errors 0  dropped 0  overruns 0  frame 0
    TX packets 14  bytes 672 (672.0 B)
    TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

virbr0: flags=4099<UP,BROADCAST,MULTICAST>  mtu 1500
    inet 192.168.124.1  netmask 255.255.255.0  broadcast 192.168.124.255
    ether 52:54:00:cb:49:e5  txqueuelen 1000  (Ethernet)
    RX packets 0  bytes 0 (0.0 B)
    RX errors 0  dropped 0  overruns 0  frame 0
    TX packets 0  bytes 0 (0.0 B)
    TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

Вот вывод команды маршрута:

$ route -n -6
Kernel IPv6 routing table
Destination                    Next Hop                   Flag Met Ref Use If
2001:468:3000::/48             ::                         U    256 5    15 tun1
2001:468:3000::/48             ::                         U    256 5    33 tun2
2001:468:3000::/48             ::                         U    1024 1     0 tun1
2001:468:4000::/48             ::                         U    256 1     0 tun3
2001:468:4000::/48             ::                         U    1024 1     0 tun3
fc00::40:56:0/112              ::                         U    100 1     0 eno1
fe80::223:ebff:fea6:4c7f/128   ::                         U    100 1     0 eno1
fe80::/64                      ::                         U    256 1     0 eno1
fe80::/64                      ::                         U    256 1     0 tun0
fe80::/64                      ::                         U    256 1     0 tun1
fe80::/64                      ::                         U    256 1     0 tun2
fe80::/64                      ::                         U    256 1     0 tun3
fe80::/64                      ::                         U    256 1     0 tun4
::/0                           fe80::223:ebff:fea6:4c7f   UG   100 13   401 eno1
::/0                           ::                         !n   -1  1   498 lo
::1/128                        ::                         Un   0   5     8 lo
2001:468:3000:1::/128          ::                         Un   0   2     0 lo
2001:468:3000:1::/128          ::                         Un   0   2     0 lo
2001:468:4000:1::/128          ::                         Un   0   2     0 lo
fe80::1a60:3195:6e42:c469/128  ::                         Un   0   2     0 lo
fe80::476b:d7be:189f:c9ee/128  ::                         Un   0   2     0 lo
fe80::47dc:3b02:90de:2030/128  ::                         Un   0   3    50 lo
fe80::4fe5:b420:b2db:cdab/128  ::                         Un   0   2     0 lo
fe80::7d63:28af:13a7:6813/128  ::                         Un   0   2     0 lo
fe80::fca3:d3a9:2352:e365/128  ::                         Un   0   2     0 lo
ff00::/8                       ::                         U    256 4   429 eno1
ff00::/8                       ::                         U    256 1     0 tun0
ff00::/8                       ::                         U    256 1     0 tun1
ff00::/8                       ::                         U    256 1     0 tun2
ff00::/8                       ::                         U    256 1     0 tun3
ff00::/8                       ::                         U    256 1     0 tun4
::/0                           ::                         !n   -1  1   498 lo

Ошибка подключения, когда клиент пытается подключиться к сокету сервера. Вывод на консоль печатается error 113 No route to host on connect().

Клиентское устройство получает следующий адрес:

2001: 468: 3000: 2: 5851: F42D: 40B1: 8CCF

Пока сервер получает:

2001: 468: 3000: 1: 5851: F42D: 40B1: 8CCF

Обратите внимание: когда я настраиваю клиент и сервер на одном устройстве, он работает. Клиент-серверное устройство получает следующий адрес:

2001: 468: 3000: 1: 5851: F42D: 40B1: 8CCF

Переадресация IP не была активирована для IPV6 на моем маршрутизаторе. Следующая команда активирует его временно:

sysctl -w net.ipv6.conf.all.forwarding=1

Для постоянной активации добавьте в файл /etc/sysctl.conf следующую строку:

net.ipv6.conf.all.forwarding=1 

Затем, чтобы применить изменения, перезагрузите файл с помощью:

sysctl -p /etc/sysctl.conf