Linux(debian)에서 특정 인터페이스를 통해 트래픽을 라우팅하는 방법은 무엇입니까?

Linux(debian)에서 특정 인터페이스를 통해 트래픽을 라우팅하는 방법은 무엇입니까?

가능한 경우 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

댓글에서 udhcpcDHCP 클라이언트로 사용하고 있다고 언급하셨습니다.

udhcpc게이트웨이 주소(또는 주소가 둘 이상인 경우)는 /usr/share/udhcpc/default.script(기본적으로) 라는 변수에서 실행되는 스크립트 에 전달됩니다 router. 그런 다음 스크립트는 이에 따라 기본 게이트웨이를 설정해야 합니다.

이미 설정된 경우 기본 스크립트는 기본 게이트웨이 설정을 무시한다고 추측합니다.

보다:https://udhcp.busybox.net/README.udhcpc

기존 네트워크 인터페이스에서 패킷을 푸시할 수는 없습니다. 인터페이스가 이더넷을 에뮬레이션하는 경우(아마도 그렇듯이 usb0) 패킷에는 유효한 레이어 2 대상 주소가 필요합니다. 시스템은 게이트웨이의 IP 주소에 대해 ARP 요청을 수행하여 자동으로 이 정보를 얻을 수 있지만 게이트웨이 IP 주소를 먼저 알아야 합니다.

관련 정보