eth0 断开连接时无法通过 SSH 连接

eth0 断开连接时无法通过 SSH 连接

我见过几个类似的问题,但还没有找到解决方案。我正在开发 Raspberry Pi 并连接第二个以太网端口(最终它将成为 Pi Zero 上的唯一端口,在工作设备上进行原型设计更容易)。

出现界面(eth1如下):

pi@rpi42:~ $ ifconfig
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.1.13  netmask 255.255.255.0  broadcast 192.168.1.255
        inet6 fe80::10a1:563b:4056:9f04  prefixlen 64  scopeid 0x20<link>
        inet6 fd87:1ceb:4c8c:1:cd55:9c53:b1c2:85b  prefixlen 64  scopeid 0x0<global>
        ether dc:a6:32:73:38:d2  txqueuelen 1000  (Ethernet)
        RX packets 59958  bytes 15803023 (15.0 MiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 742  bytes 84166 (82.1 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

eth1: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.1.56  netmask 255.255.255.0  broadcast 192.168.1.255
        inet6 fd87:1ceb:4c8c:1:fa0:37de:a0c4:30dd  prefixlen 64  scopeid 0x0<global>
        inet6 fe80::78d1:81ff:fed5:b9a0  prefixlen 64  scopeid 0x20<link>
        ether 7a:d1:81:d5:b9:a0  txqueuelen 1000  (Ethernet)
        RX packets 6913  bytes 2239414 (2.1 MiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 118  bytes 11356 (11.0 KiB)
        TX errors 66  dropped 0 overruns 0  carrier 0  collisions 0

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 2  bytes 198 (198.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 2  bytes 198 (198.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

...并且 IP 地址与我的网络控制器相匹配。但是,为了使 IP 匹配,我必须设置一个静态 IP,然后在 上显式设置它eth1,例如。sudo ifconfig eth1 192.168.1.56/24。另外,我必须使用 systemd 设置 MAC 地址:

[Unit]
Description=Set MAC address for w5500 module
Wants=network-pre.target
Before=network-pre.target
BindsTo=sys-subsystem-net-devices-eth1.device
After=sys-subsystem-net-devices-eth1.device
[Service]
Type=oneshot
ExecStart=/sbin/ip link set dev eth1 address 7a:d1:81:d5:b9:a0
ExecStart=/sbin/ip link set dev eth1 up
[Install]
WantedBy=multi-user.target

我希望断开连接eth0并仍然能够 ssh 进入设备,但没有这样的运气。eth0连接时我可以使用任一 IP 地址通过 ssh 登录设备,未连接时也可以使用 ssh 登录设备。我不确定这些接口的 IP 地址应该相同还是不同,但这对我来说都没关系。

route -n这是if 有帮助的输出:

Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         192.168.1.1     0.0.0.0         UG    202    0        0 eth0
0.0.0.0         192.168.1.1     0.0.0.0         UG    203    0        0 eth1
192.168.1.0     0.0.0.0         255.255.255.0   U     202    0        0 eth0
192.168.1.0     0.0.0.0         255.255.255.0   U     203    0        0 eth1

我有点不知所措了。提前致谢。

相关内容