Ubuntu 18.04에 OpenVPN 서버를 설정했습니다. 클라이언트는 VPN에 연결되고 모든 트래픽은 VPN을 통해 라우팅됩니다. 나가는 IP는 클라이언트가 연결된 IP와 동일합니다.
이제 프라이빗 서브넷에 다른 네트워크 인터페이스를 추가했습니다. 클라이언트의 나가는 트래픽이 이 인터페이스를 통해 라우팅되어 나가는 IP가 프라이빗 서브넷에 있는 NAT 게이트웨이의 외부 IP가 되기를 원합니다.
라우팅을 구성하는 방법을 모르기 때문에 약간 당황스럽습니다. eth1의 측정항목을 eth0보다 높게 늘리면 더 이상 VPN이나 SSH를 통해 서버에 연결할 수 없습니다.
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
default ip-172-30-0-1.e 0.0.0.0 UG 100 0 0 eth0
default ip-172-30-10-1. 0.0.0.0 UG 200 0 0 eth1
10.8.0.0 0.0.0.0 255.255.255.0 U 0 0 0 tun0
172.30.0.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
ip-172-30-0-1.e 0.0.0.0 255.255.255.255 UH 100 0 0 eth0
172.30.10.0 0.0.0.0 255.255.255.0 U 0 0 0 eth1
ip-172-30-10-1. 0.0.0.0 255.255.255.255 UH 200 0 0 eth1
녹색 화살표는 제가 달성하고 싶은 것이고, 빨간색 화살표는 현재 일어나고 있는 일입니다.
답변1
이는 비대칭 라우팅의 문제인 것 같습니다. 이전에 멀티홈 서버에서 이러한 문제가 발생한 적이 있습니다. 더 이상 SSH를 통해 서버에 연결할 수 없는 이유 중 하나는 패킷이 한 인터페이스에서 왔지만 응답이 다른 인터페이스를 통과하기 때문입니다. 제 기억이 맞다면 IP A에 간단한 ping을 보낼 때 IP B로부터 응답을 받았는데, 이는 보안 프로토콜/애플리케이션과 그다지 호환되지 않습니다. "정책 라우팅"을 사용하여 이 문제를 해결했습니다.
그 기사는 내가 그렇게 하는 데 도움이 되었습니다. 4.1. 단순 소스 정책 라우팅
에 관한 기사입니다.멀티홈 서버의 비대칭 라우팅