여러 네트워크 인터페이스 문제

여러 네트워크 인터페이스 문제

2개의 3G USB 모뎀(또는 하나의 USB 모뎀과 다른 네트워크 인터페이스 - eth또는 wlan)이 있습니다.

다음과 같이 IP 규칙을 생성하고 각 인터페이스에 대한 경로를 추가하여 두 인터페이스를 연결했습니다.

sb="ip/subnet"
ifn="network interface (ppp0, eth0..etc)"
ipo="interface ip"

ip route add "$sb" dev "$ifn" src "$ipo" table "$tbl"
ip route add "$sb" dev "$ifn" src "$ipo"
ip route add default via "$gw" table "$tbl" 
ip rule add from "$ipo" table "$tbl"
ip rule add to "$ipo" table "$tbl"

두 인터페이스가 모두 연결되어 있으며 각 인터페이스는 최고 속도로 독립적으로 연결됩니다. 두 인터페이스를 동시에 사용하여 다운로드하려고 하면 문제가 발생합니다.

  1. 터미널을 열고 첫 번째 화면에서 다운로드를 시작하세요.

     curl --interface ppp0 "$URL" -o /dev/null
    
  2. 다른 터미널을 열고 두 번째 인터페이스에서 다운로드를 시작하세요.

     curl --interface ppp1 "$URL" -o /dev/null 
    

문제는 두 명령을 함께 실행하면 두 인터페이스 모두 속도가 느려지고 첫 번째 인터페이스가 1.5MBps에서 시작되고 다음 명령이 시작되면 첫 번째 인터페이스가 느려지기 시작한다는 것입니다. 반대로, 두 번째 인터페이스가 먼저 시작되면 첫 번째 인터페이스가 시작될 때 속도가 떨어집니다.

자동 로드 밸런싱이 발생하는 것과 같습니다. 커널 매개변수 rp_filterarp_filter.

분명히 말하면 로드 밸런싱은 필요하지 않으며 동시 연결을 위해 각 인터페이스가 독립적으로 실행되기만 하면 됩니다.

감사해요!

고쳐 쓰다

각 인터페이스가 서로 다른 네트워크 네임스페이스에 있더라도 동시에 실행될 때 서로의 속도에 영향을 미칠 수 있습니다.

관련 정보