두 개의 네트워크 인터페이스, 하나는 무작위로 실패함

두 개의 네트워크 인터페이스, 하나는 무작위로 실패함

저는 데스크탑("D"라는 이름)과 노트북("L")을 이더넷으로 라우터("Wormhole")에 연결했습니다. 이 라우터는 두 컴퓨터를 연결하는 역할만 합니다. 또한 다른 곳에 Wi-Fi 라우터("WiFi")가 있고 두 컴퓨터 모두 여기에 연결되어 있습니다. 토폴로지는 거기에서 확장되지만 세부 사항은 중요하지 않습니다. Wormhole 연결은 이 두 시스템 간의 데이터 전송 속도를 높이기 위해 존재합니다. (참고: 여기서는 "라우터"라는 단어를 잘못 사용하고 있다는 소식을 들었습니다. 즉, 라우터라고 통칭하는 장치의 스위칭 측면을 의미합니다.)

WiFi는 192.168.4.1/24 및 외부 주소를 처리합니다. 웜홀은 192.168.8.1/24만 처리합니다. 또한 WiFi는 DHCP를 사용하지만 Wormhole의 클라이언트에는 고정 IP가 있습니다. D의 웜홀 주소는 192.168.8.8이고 L은 192.168.8.6입니다. D의 Wi-Fi 연결은 예상대로 wlan0을 통해, Wormhole은 eth0을 통해 연결됩니다.

가끔은 이것이 잘 작동합니다192.168.8.8과 192.168.8.6 사이의 트래픽은 빠릅니다. 그러나 D가 부팅된 후에는 무작위로 보이는 것처럼 보이지만가끔 D가 웜홀에 도달하지 못하는 경우도 있습니다.다음 재부팅 시 주사위를 다시 던질 때까지. 해결 방법으로 D와 L은 Wi-Fi 연결을 통해 문제 없이 계속 대화할 수 있습니다.

ping -c4 192.168.8.1:

PING 192.168.8.1 (192.168.8.1) 56(84) bytes of data.
From 192.168.8.8 icmp_seq=1 Destination Host Unreachable
From 192.168.8.8 icmp_seq=2 Destination Host Unreachable
From 192.168.8.8 icmp_seq=3 Destination Host Unreachable
From 192.168.8.8 icmp_seq=4 Destination Host Unreachable

--- 192.168.8.1 ping statistics ---
4 packets transmitted, 0 received, +4 errors, 100% packet loss, time 3035ms

D를 재부팅하면 이 문제가 해결되는 경우도 있지만 그렇지 않은 경우도 있습니다. D를 다른 시스템으로 교체하면 모든 것이 다시 작동하므로 문제가 라우터나 케이블에 있는 것이 아니라고 확신합니다. L은 전혀 문제가 없는 것 같습니다.

D는 Ubuntu 21.10(실제로는 Kubuntu)을 실행합니다. 처음에는 경로가 초기화 중 경쟁 조건에 의해 영향을 받고 있다고 의심했지만 실제로는 제 수준을 벗어났기 때문에 그렇게 생각했습니다. 연결이 작동할 때와 작동하지 않을 때의 route, ip route, ip route show to match 192.168.8.1, ip a및 , 출력을 모두 녹음했습니다 . nmcli device show결과는 동일합니다. 이는 충격적이며, 제가 이 탄원서를 작성하는 이유는 무엇입니까? 유일한 차이점은 ip awlan0의 DHCPv6 주소 및 LFT 통계와 같이 여러분이 기대하는 것입니다.

route:

Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
default         WiFi            0.0.0.0         UG    600    0        0 wlan0
link-local      0.0.0.0         255.255.0.0     U     1000   0        0 eth0
172.17.0.0      0.0.0.0         255.255.0.0     U     0      0        0 docker0
192.168.4.0     0.0.0.0         255.255.255.0   U     600    0        0 wlan0
192.168.8.0     0.0.0.0         255.255.255.0   U     100    0        0 eth0
192.168.8.0     192.168.8.1     255.255.255.0   UG    100    0        0 eth0

ip route:

default via 192.168.4.1 dev wlan0 proto dhcp metric 600 
169.254.0.0/16 dev eth0 scope link metric 1000 
172.17.0.0/16 dev docker0 proto kernel scope link src 172.17.0.1 linkdown 
192.168.4.0/24 dev wlan0 proto kernel scope link src 192.168.4.102 metric 600 
192.168.8.0/24 dev eth0 proto kernel scope link src 192.168.8.8 metric 100 
192.168.8.0/24 via 192.168.8.1 dev eth0 proto static metric 100 

ip route show to match 192.168.8.1:

default via 192.168.4.1 dev wlan0 proto dhcp metric 600 
192.168.8.0/24 dev eth0 proto kernel scope link src 192.168.8.8 metric 100 
192.168.8.0/24 via 192.168.8.1 dev eth0 proto static metric 100 

ip address show dev eth0:

2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
    link/ether e0:3f:49:a5:03:d6 brd ff:ff:ff:ff:ff:ff
    altname enp0s25
    inet 192.168.8.8/24 brd 192.168.8.255 scope global noprefixroute eth0
       valid_lft forever preferred_lft forever
    inet6 fe80::3a41:15c1:b87a:5f63/64 scope link noprefixroute 
       valid_lft forever preferred_lft forever

nmcli device show eth0:

GENERAL.DEVICE:                         eth0
GENERAL.TYPE:                           ethernet
GENERAL.HWADDR:                         E0:3F:49:A5:03:D6
GENERAL.MTU:                            1500
GENERAL.STATE:                          100 (connected)
GENERAL.CONNECTION:                     Wired connection 1
GENERAL.CON-PATH:                       /org/freedesktop/NetworkManager/ActiveConnection/1
WIRED-PROPERTIES.CARRIER:               on
IP4.ADDRESS[1]:                         192.168.8.8/24
IP4.GATEWAY:                            --
IP4.ROUTE[1]:                           dst = 192.168.8.0/24, nh = 0.0.0.0, mt = 100
IP4.ROUTE[2]:                           dst = 169.254.0.0/16, nh = 0.0.0.0, mt = 1000
IP4.ROUTE[3]:                           dst = 192.168.8.0/24, nh = 192.168.8.1, mt = 100
IP6.ADDRESS[1]:                         fe80::3a41:15c1:b87a:5f63/64
IP6.GATEWAY:                            --
IP6.ROUTE[1]:                           dst = fe80::/64, nh = ::, mt = 100

나는 netplan과 /etc/network/interfaces를 사용해 보았지만 어둠 속에서 찌르는 것뿐입니다. Linux에서 마지막으로 네트워킹을 설정한 것은 systemd가 인계되기 전이었고 그 당시에는 구성이 많이 달랐습니다. 처음에는 네트워크 문제 해결에 대해 많이 아는 것이 아닙니다. 어떤 아이디어가 있나요?

관련 정보