VPN에 연결되었지만 원격 네트워크의 호스트를 ping할 수 없습니다.

VPN에 연결되었지만 원격 네트워크의 호스트를 ping할 수 없습니다.

R2에 설정한 VPN(L2TP/IPsec) 서버에 PC2를 연결했습니다. PC3과 PC4를 ping하려면 PC2가 필요하지만 작동하지 않습니다. Windows 시스템을 사용하여 VPN에 연결하면 R2에서 호스트를 ping할 수 있지만 Linux 시스템(Raspbian Jessie)에서는 그렇지 않습니다. 나는 해결책이 라우팅 테이블과 관련이 있다고 생각하지만 거기서 내가 무엇을 하고 있는지는 모르겠습니다.

브라우저에 192.168.1.1을 입력하면 원격 라우터의 로그인 화면이 표시되기 때문에 PC2에서 R2에 연결되어 있다는 것을 알고 있습니다.

네트워크 다이어그램

PC2는 R1에서는 192.168.1.125이고 R2에서는 192.168.1.69입니다. R2의 공용 IP는 76.73.240.120입니다. 현재 라우팅 정보는 다음과 같습니다.

root@raspberrypi:/home/pi# ip route show
default dev ppp0  scope link
default via 192.168.1.1 dev wlan0  metric 303
76.73.240.120 via 192.168.1.1 dev wlan0
192.168.1.0/24 dev wlan0  proto kernel  scope link  src 192.168.1.125  metric 303
192.168.1.1 dev ppp0  proto kernel  scope link  src 192.168.1.69

PC2가 R2 아래의 호스트를 ping할 수 있도록 하려면 어떻게 해야 합니까?

답변1

이건 지저분해 보여요! 먼저 라우터를 연결하세요.다른함께 네트워크를 형성하세요. 단순화하자면, 동일한 네트워크에 있는 경우 서로 직접 통신할 수 있어야 합니다. 192.168.1.0/24라는 2개의 네트워크가 있습니다. 가장 간단한 해결책은 그 중 하나(PC1, PC2, R1)의 번호를 192.168.2.0/24로 다시 지정하는 것입니다.

PC3이 192.168.1.10에 있다고 가정합니다.

이것이 문제가 되는 이유는 PC3에 접근하는 방법을 결정하는 3가지 규칙이 있다는 것입니다. 하나는 일치하기 때문이고 다른 192.168.1.0/24두 개는 0.0.0.0/0에도 쓸 수 있는 규칙과 일치하기 때문입니다 default(한 번은 ppp0 인터페이스(터널을 통해) ) 그리고 wlan0 인터페이스를 통해 한 번).

규칙은 순서대로 되어 있으며 24가 0보다 더 구체적이므로 사용됩니다.

따라서 이 라우팅 테이블은 PC2가 wlan0 인터페이스를 통해 PC3과 직접 통신할 수 있음을 보여줍니다. 그래서 당신이 ping PC3무선 카드를 사용할 때.

192.168.2.0/24 네트워크에 있도록 PC1, PC2 및 R1의 번호를 다시 지정하면 PC2 위치에 대한 규칙이 더 간단해집니다. 패킷을 192.168.2.0/24로 보내야 하는 경우 wlan0을 통해 보내고, 그렇지 않으면 ppp0을 통해 192.168.1.1로 보냅니다.

192.168.1.1에 액세스하려면 ppp0을 통한 0.0.0.0/0, wlan0을 통한 0.0.0.0/0, wlan0을 통한 192.168.1.0/24 및 ppp0을 통한 192.168.1.1/32의 4가지 선택 사항이 있습니다. /32 경로가 가장 구체적이므로 선택되었습니다. 이는 R2가 표시되는 이유를 설명합니다.

할 수 있다PC3 및 PC4에 대한 추가 경로를 추가합니다.

ip route add 192.168.1.10/32 dev ppp0
ip route add 192.168.1.11/32 dev ppp0

그리고 R2가 패킷이 돌아올 수 있을 만큼 데이터를 섞을 수 있기를 바라지만, 번호를 다시 매기는 것이 훨씬 간단합니다.

관련 정보