eth0 接続が切断されると、SSH 経由で接続できません。

eth0 接続が切断されると、SSH 経由で接続できません。

同様の質問をいくつか見ましたが、まだ解決策が見つかりませんでした。私はRaspberry Piで開発中で、2番目のイーサネットポートを接続しています(最終的に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を設定してから明示的に設定する必要がありますeth1sudo 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 -nifの有用な出力は次のとおりです。

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

私は少し圧倒されました。よろしくお願いします。

ベストアンサー1

おすすめ記事