비슷한 질문을 여러개 봤지만 아직 해결책을 찾지 못했습니다. 나는 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
나는 조금 압도당했습니다. 미리 감사드립니다.