게이트웨이로서의 OpenVPN 클라이언트: 서버에서 클라이언트로의 Ping은 제대로 작동하지만 게이트웨이는 그렇지 않습니다.

게이트웨이로서의 OpenVPN 클라이언트: 서버에서 클라이언트로의 Ping은 제대로 작동하지만 게이트웨이는 그렇지 않습니다.

OpenWRT 라우터에서 실행 중인 OpenVPN 서버가 있고 이를 사용하고 싶습니다.게이트웨이로서의 OpenVPN 클라이언트내 라우터에 연결된 일부 로컬 컴퓨터의 경우.

내가 한 일/성공한 일:

  • OpenWRT 라우터( 192.168.0.1/ 10.0.0.1)에서 OpenVPN 클라이언트( / 10.0.0.6)에 ping 및 ssh를 보낼 수 있습니다.
  • 나는 라우터에 다음과 같은 tunnelpi1새로운 라우팅 테이블을 설정했습니다 ./etc/iproute2/rt_tables
#
# reserved values
#
128 prelocal
255 local
254 main
253 default
0   unspec
#
# local
#
#1  inr.ruhep
10  tunnelpi1
  • 192.168.0.21710.0.0.6클라이언트 IP를 tunnelpi1테이블에 추가하고 이 테이블에 대한 기본 경로를 설정하여 OpenVPN 클라이언트를 통해 로컬 클라이언트()의 트래픽을 라우팅하도록 라우터를 구성했습니다 .
ip rule add from 192.168.0.217/32 table tunnelpi1
ip route add default via 10.0.0.6 dev tun table tunnelpi1
  • 로컬 클라이언트()에서 경로를 추가하면 192.168.0.217더 이상 핑할 수 없으며, 제거하면 다시 핑할 수 있습니다. 따라서 규칙이 뭔가를 하고 있는 것처럼 보입니다(다른 클라이언트는 영향을 받지 않으므로 괜찮습니다).8.8.8.88.8.8.8
  • OpenVPN 클라이언트( 10.0.0.6)에는 자체 를 통해 완전히 작동하는 인터넷 연결이 있습니다 eth0. ping 8.8.8.8문제없이 작동했습니다. 기본 게이트웨이는 VPN( tun0)이 아니라 eth0제가 원하는 인터페이스입니다.
  • OpenVPN 클라이언트에서 IP 전달을 활성화하고 iptables를 통해 NAT 규칙을 추가하여 다음을 통해 모든 것을 전달했습니다 eth0.
echo 1 > /proc/sys/net/ipv4/ip_forward
iptables -F
iptables -t nat -F
iptables -t mangle -F
iptables -X
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
iptables -P INPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -P OUTPUT ACCEPT

**작동하지 않는 것: 트래픽이 192.168.0.217통과하기를 원 10.0.0.6하지만 그런 일이 발생하지 않는 것 같습니다. 테이블 규칙을 추가한 후에는 아무 것도 핑할 수 없습니다. OpenVPN이 무언가를 차단하고 있거나 openvpn-client의 iptables 설정이 잘못된 것 같습니다. 여기서부터 어떻게 진행해야 할지 모르겠습니다.

어떤 제안이 있으십니까?

관련 정보