가능한 경우 eth0 대신 usb0(셀룰러 모뎀)을 통해 트래픽을 라우팅하고 싶습니다. usb0의 IP 주소는 시간이 지남에 따라 변경될 수 있습니다. IP 주소가 변경될 수 있는데 이 경우 경로를 어떻게 생성합니까?
나는 시도했다:ip route add default dev usb0
하지만 이렇게 하면 usb0에서 ping할 수 있지만 더 이상 eth0을 통해 ping할 수 없습니다. 어떤 아이디어가 있나요?
Destination Gateway Genmask Flags Metric Ref Use Iface
default 172.24.1.1 0.0.0.0 UG 10 0 0 eth0
172.19.200.136 * 255.255.255.252 U 0 0 0 usb0
172.24.1.0 * 255.255.255.0 U 0 0 0 eth0
답변1
댓글에서 udhcpc
DHCP 클라이언트로 사용하고 있다고 언급하셨습니다.
udhcpc
게이트웨이 주소(또는 주소가 둘 이상인 경우)는 /usr/share/udhcpc/default.script
(기본적으로) 라는 변수에서 실행되는 스크립트 에 전달됩니다 router
. 그런 다음 스크립트는 이에 따라 기본 게이트웨이를 설정해야 합니다.
이미 설정된 경우 기본 스크립트는 기본 게이트웨이 설정을 무시한다고 추측합니다.
보다:https://udhcp.busybox.net/README.udhcpc
기존 네트워크 인터페이스에서 패킷을 푸시할 수는 없습니다. 인터페이스가 이더넷을 에뮬레이션하는 경우(아마도 그렇듯이 usb0
) 패킷에는 유효한 레이어 2 대상 주소가 필요합니다. 시스템은 게이트웨이의 IP 주소에 대해 ARP 요청을 수행하여 자동으로 이 정보를 얻을 수 있지만 게이트웨이 IP 주소를 먼저 알아야 합니다.