내 질문을 이해하기 위해 먼저 관련없는 간단한 설명을 제공하겠습니다.
저는 각각 2개의 NIC(WAN 인터페이스용 1개, LAN 인터페이스용 1개)를 갖춘 3개의 Linux 상자를 가지고 있습니다. 각 Linux 상자에는 WAN 인터페이스에 구성된 ISP의 전체 공용 서브넷이 있으며 해당 인터페이스를 사용하여 "인터넷"에 성공적으로 연결할 수 있습니다.
각 박스의 LAN 인터페이스는 192.168.50.0/24 네트워크에서 구성됩니다. 그러나 이들은 "인터넷"으로부터 격리되어 있으며 서로에게만 ping이 성공적으로 수행될 수 있습니다. ISP는 내 LAN 네트워크에 NAT/라우터 기능을 제공하지 않습니다.
이 첫 번째 문제를 해결하기 위해 네 번째 Linux 상자(NIC 2개 포함)를 구입하고 OPNsense를 설치했으며 이제 LAN 네트워크용 "게이트웨이"(192.168.50.1)가 생겼습니다. 터널 네트워크가 192.168.10.0/24로 설정된 OPNsense를 통해 OpenVPN을 구성했으며 원격 클라이언트에서 성공적으로 연결하고 개인 IP 주소(192.168.50.1)에서 OPNsense 서버를 ping할 수 있습니다. 그러나 OPNsense 서버의 개인 IP(192.168.50.1)를 사용하여 1개의 LAN NIC와 게이트웨이 설정이 있는 일부 클라이언트에만 ping을 수행할 수 있습니다.
세 개의 초기 서버(2 x NIC 포함)의 경우 여전히 ping을 실행할 수 없습니다. 유일한 차이점은 해당 LAN NIC에 게이트웨이 IP(192.168.50.1)가 지정되지 않았다는 것입니다. 그러나 다른 클라이언트와 함께 작동하는 경우 이를 추가하려고 하면 서버에 완전히 연결할 수 없게 되고 게이트웨이 변경 사항을 실행 취소하려면 콘솔을 통해 다시 연결해야 합니다. Linux는 2개의 게이트웨이를 갖는 것을 좋아하지 않는 것 같고 이 세 개의 서버에도 연결해야 하기 때문에 이 문제를 어떻게 해결해야 할지 정확히 모르겠습니다.
LAN 게이트웨이가 있는 일부 클라이언트에 연결할 수 있기 때문에 이 문제는 OPNsense 또는 OpenVPN과 관련이 없습니다. 두 개의 게이트웨이로 Linux 상자를 구성하면 서버가 완전히 다운된다는 사실입니다.
이와 같은 경우에는 고정 경로를 구성해야 한다는 내용을 읽었지만 나에게는 그것이 말이 되지 않습니다. 추신: 세 가지 Linux 상자 모두 Almalinux 8을 사용합니다. \
이 문제에 대한 의견을 보내 주시면 감사하겠습니다.
답변1
여러 개의 활성 DEFAULT 게이트웨이를 좋아하는 시스템은 없습니다. 기본 게이트웨이는 정의상 알 수 없는 모든 네트워크에 연결하기 위한 기본 경로입니다. 알 수 없는 네트워크는 서버의 라우팅 테이블에 더 직접적인 경로가 없는 네트워크입니다.
기본 게이트웨이가 두 개 이상인 경우 두 게이트웨이 모두 모두 동일한 네트워크에 대한 경로를 가지고 있어야 합니다. 이 경우에는 완전히 분리된 두 개의 네트워크에 있는 두 개의 게이트웨이가 아니며 실제로는 두 개의 게이트웨이입니다. 이로 인해 네트워크 패킷이 잘못된 네트워크 인터페이스로 나가게 됩니다. 이것은 이것을 구현하는 방법이 아닙니다.
WAN 인터페이스에서는 기본 게이트웨이를 유지하고 LAN 인터페이스에서는 게이트웨이를 모두 제거합니다. 그런 다음 VPN 서버가 연결할 수 있는 프라이빗 서브넷 범위에 대해 다음 홉을 사용하도록 고정 경로를 설정합니다 192.168.50.1
. 이 경우 고정 경로가 필요한 네트워크는 입니다 192.168.10.0/24
. 이는 이중 인터페이스가 있는 세 대의 서버에서 수행됩니다.
3개 서버의 명령은 다음과 같습니다.
ip route add 192.168.10.0/24 via 192.168.50.1
이는 일시적이며 재부팅 후에는 손실됩니다. 영구 정적 경로를 추가하는 방법은 Linux의 종류에 따라 다르지만 Google에서 찾는 것은 매우 간단합니다.