라우팅 테이블에 추가 기본 항목 추가

라우팅 테이블에 추가 기본 항목 추가

저는 beaglebone black과 최신 IoT Debian 9 이미지를 사용하고 있습니다. (BeagleBoard.org Debian Image 2018-03-05)

네트워크 인터페이스를 구성하는 방법은 다음과 같습니다.

/etc/네트워크/인터페이스

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
auto eth0
iface eth0 inet static
 address 192.168.0.220
 netmask 255.255.255.0
 gateway 192.168.0.155

# Ethernet/RNDIS gadget (g_ether)
iface usb0 inet static
    address 192.168.7.2
    netmask 255.255.255.252
    network 192.168.7.0
    gateway 192.168.7.1

# Nameservers
dns-nameservers 192.168.0.155

인터페이스를 시작한 후 내 라우팅 테이블은 다음과 같습니다.

debian@beaglebone:~$ ip route
default via 192.168.0.155 dev eth0 onlink
192.168.0.0/24 dev eth0 proto kernel scope link src 192.168.0.220
192.168.6.0/30 dev usb1 proto kernel scope link src 192.168.6.2 linkdown
192.168.7.0/30 dev usb0 proto kernel scope link src 192.168.7.2

기본 게이트웨이를 통해 인터넷에 액세스할 수 있으며 모든 것이 잘 작동하지만 1-2분 후에 일부 다른 항목이 나타납니다.

이제 내 라우팅 테이블은 다음과 같습니다.

debian@beaglebone:~$ ip route
default dev eth0 scope link
default via 192.168.0.155 dev eth0 onlink
192.168.0.0/24 dev eth0 proto kernel scope link src 192.168.0.220
169.254.0.0/16 dev eth0 proto kernel scope link src 169.254.66.227
192.168.6.0/30 dev usb1 proto kernel scope link src 192.168.6.2 linkdown
192.168.7.0/30 dev usb0 proto kernel scope link src 192.168.7.2

이제 제가 정의한 게이트웨이 대신 상위 기본 게이트웨이가 사용되는 것 같습니다. 따라서 인터넷(및 기타 내부 네트워크)에 액세스할 수 없습니다.

이는 eth0이 네트워크에 연결된 경우에만 발생합니다. 내가 사용하고 있는 네트워크의 다른 모든 장치도 정적으로 구성되어 있습니다.

내 시스템이 사용하려는 기본 게이트웨이를 사용하도록 하려면 어떻게 해야 합니까?

usb0에서 기본 게이트웨이를 제거하거나 별도의 라우팅 테이블에 넣어 보았습니다. 이로 인해 어떤 인터페이스를 통해서도 beaglebone에 액세스할 수 없게 되었습니다.

ifconfig의 출력은 다음과 같습니다. 누군가가 여기에서 수상한 내용을 볼 경우를 대비해 말입니다.

debian@beaglebone:~$ ifconfig
eth0: flags=-28605<UP,BROADCAST,RUNNING,MULTICAST,DYNAMIC>  mtu 1500
        inet 192.168.0.220  netmask 255.255.255.0  broadcast 192.168.0.255
        inet6 fe80::564a:16ff:fee5:e79d  prefixlen 64  scopeid 0x20<link>
        ether 54:4a:16:e5:e7:9d  txqueuelen 1000  (Ethernet)
        RX packets 79  bytes 9988 (9.7 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 458  bytes 85028 (83.0 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
        device interrupt 181

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 1  (Local Loopback)
        RX packets 180  bytes 14118 (13.7 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 180  bytes 14118 (13.7 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

usb0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.7.2  netmask 255.255.255.252  broadcast 192.168.7.3
        inet6 fe80::564a:16ff:fee5:e79f  prefixlen 64  scopeid 0x20<link>
        ether 54:4a:16:e5:e7:9f  txqueuelen 1000  (Ethernet)
        RX packets 740  bytes 79447 (77.5 KiB)
        RX errors 0  dropped 4  overruns 0  frame 0
        TX packets 525  bytes 97473 (95.1 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

usb1: flags=4099<UP,BROADCAST,MULTICAST>  mtu 1500
        inet 192.168.6.2  netmask 255.255.255.252  broadcast 192.168.6.3
        ether 54:4a:16:e5:e7:a2  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

답변1

문제는 connman이 내 컴퓨터에서 실행되고 있다는 것 같습니다. 내 구성을 무시하고 자체 항목을 삽입했습니다. connman을 제거한 후 모든 것이 예상대로 작동합니다.

관련 정보