openvpn 을 통하여 NAT하는법?
OpenVPN Client가 설치된 리눅스 머신에서 내부네트워크의 통신을 VPN을 이용하도록 하고 싶습니다.
그런데 잘 안되네요..ㅠㅠ
OpenVPN은 tun을 사용합니다.
Site-to-Site VPN 비슷한거 같은데...
VPN연결을 Default Gateway으로 설정하고 Masquerade을 하면 잘 되긴 하는데
제가 원하는 것은 VPN연결을 Default Gateway으로 설정하지 않고, SNAT을 사용하는 것입니다.
(VPN 연결)
tun0
inet addr:10.100.0.10 P-t-P:10.100.0.11 Mask:255.255.255.255
(내부네트웍)
eth1
inet addr:192.168.100.1 Mask:255.255.255.0
ip route flush table WAN_VPN
ip route add 10.100.0.0/24 dev tun0 src 10.100.0.10 table WAN_VPN
ip route add default via 10.100.0.11 table WAN_VPN
ip rule add from all fwmark 2250 prio 2000 table WAN_VPN
ip route add 10.100.0.0/24 dev tun0 src 10.100.0.10
ip rule add from 10.100.0.10 table WAN_VPNGATE
ip route add 10.100.0.0/24 dev tun0 via 10.100.0.11
iptables -t nat -A POSTROUTING -s 192.168.100.0/24 -j SNAT --to-source 10.100.0.10
iptables -A FORWARD -j ACCEPT
인터넷을 찾아보면서 이것저것 해보았는데 안되네요..ㅠㅠ
어떻게 하면 될까요??
tun이 아닌 일반 Network Interface을 사용할때에는
http://lartc.org/howto/lartc.rpdb.multiple-links.html
이렇게 했을때는 되었는데 tun은 안되네요...
(참고로 VPN Server의 IP(Gateway?)는 모르는 상태입니다.
그런데 원래 tun에서는 Gateway IP을 몰라도 된다고 생각하는데...
OpenVPN을 Default gateway으로 설정하면
ip route add default via 10.100.0.11 dev tun0
ip route add 128.0.0.0/1 via 10.100.0.11 dev tun0
이렇겐가? 하면 되더라구요)
댓글 달기