VM을 통해 여러 ADSL로드 밸런서를 iproute load balancing rule ip route add default scope

오랫동안 (2 년?) 나는 매우 기본적인 아웃 바운드로드 밸런싱 기능을 갖춘 가상 머신 (Ubuntu 12.04 서버)을 실행하여 다른 아웃 바운드 연결을 다른 ADSL 라우터로 보냅니다.

NAT 마스커레이드없이 iproute를 사용하여 간단하게 구성되는 NAT는 아웃 바운드 ADSL 라우터 자체에서 관리하므로로드 밸런싱 라우터 VM을 우회하여 발신자에게 연결을 직접 라우팅 할 수 있습니다. 라우터 VM에는 방화벽 규칙 (iptable)도 없습니다.

echo 1 > /proc/sys/net/ipv4/ip_forward

# flush initially
ip route flush cache

# remove whatever is there for the default to begin with
ip route delete default

# default load balancing rule
ip route add default scope global \
    nexthop via ${ROUTER2} dev ${INTERFACE} weight 6 \
    nexthop via ${ROUTER1} dev ${INTERFACE} weight 4

이것은 오랫동안 잘 작동했습니다.

최근에로드 밸런서 (Ubuntu 12.04 서버 가상 머신)를 Ubuntu 14.04로 업그레이드했습니다 (릴리스-업그레이드 -d).

위의 “ip route add default”명령을 사용하여 인터넷 연결을 업그레이드하면 산발적 인 연결 문제가 발생하여 사용할 수없는 경험이 생길 수 있습니다. 마치 개별 패킷이 두 라우터를 통해 전송되고 마치 전체 연결이 아닌 것처럼.

이것은 동일한 효과를 가진 두 번째 14.04 가상 머신에서 시도되었습니다.

우분투 14.04 (현재 커널 : 3.13.0-24)에서 동일한 기능을 원합니다. 무엇이 바뀌 었는지 이해할 수 없습니다.

어떤 제안?



답변

원래 포스터에 더 이상 솔루션이 필요하지 않다는 것을 알고 있지만 여기 에이 문제에 대한 최상의 솔루션이 나와 있습니다. 또한 포스터가 우분투를 선호하지만, 수동으로 라우팅 규칙을 구성하는 것은 다른 사람에게 소유권을 이전하거나 몇 년 후 자신을 참조하는 데 적합하지 않습니다.

개인적으로 PFSense VM을 사용하여 연결 부하를 분산시키는보다 강력한 설정을 제안합니다. 모뎀이 아닌 PFSense 상자 자체에서 NAT를 수행하는 것이 좋습니다. VM에서 이와 비슷한 구성이 있으며 잘 작동합니다.

모뎀과 PFSense VM 간의 연결을 위해 vlan 가능 스위치를 사용하여 3 개의 개별 VLans를 VM에 연결하고 스위치의 3 개의 개별 포트로 분리합니다. 이것은 실제로 각 모뎀에서 pfsense 박스로의 직접 (가상) 케이블과 LAN으로의 다른 케이블을 제공합니다. 그런 다음 제공 업체마다 다른 통과를 위해 모뎀을 구성 할 수 있습니다.

이것이 직접 문제를 해결하는 대신 문제를 회피하는 것은 사실이지만 모뎀 자체에 NAT를 배치하는 것은 문제를 묻는 것처럼 보입니다. 또한 PFSense는 사전 패키지 된 라우터 솔루션으로 특별히 설계되었으므로 이와 같은 구성을 지원하고 지속적으로 테스트하여 업그레이드를 통해 안정성을 향상시킵니다.


답변