다중 네트워크 인터페이스 문제

다중 네트워크 인터페이스 문제

저는 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.

명확하게 말하면 로드 밸런싱이 필요하지 않으며 동시 연결을 위해 각 인터페이스가 독립적으로 실행되어야 합니다.

감사해요!

업데이트

서로 다른 네트워크 네임스페이스에 있는 각 인터페이스를 사용하더라도 동시에 실행되면 서로의 속도에 영향을 미칩니다.

관련 정보