
XEN에 OpenVPN domU를 설치하고 싶습니다. Dom0과 domU는 Debian Squeeze를 실행하고 있으며 모든 domU는 NAT 전용 네트워크 10.0.0.1/24에 있습니다. 내 VPN-Gate는 von 10.0.0.1이고 실행 중입니다. dom0 공용 IP에서 액세스할 수 있도록 하려면 어떻게 해야 합니까?
iptables를 사용하여 포트 전달을 시도했지만 성공하지 못했습니다.
내가 한 일은 다음과 같습니다.
~ # iptables -L -n -v
Chain INPUT (policy ACCEPT 1397 packets, 118K bytes)
pkts bytes target prot opt in out source destination
Chain FORWARD (policy ACCEPT 930 packets, 133K bytes)
pkts bytes target prot opt in out source destination
0 0 ACCEPT all -- * * 0.0.0.0/0 0.0.0.0/0 state RELATED,ESTABLISHED PHYSDEV match --physdev-out vif5.0
0 0 ACCEPT udp -- * * 0.0.0.0/0 0.0.0.0/0 PHYSDEV match --physdev-in vif5.0 udp spt:68 dpt:67
0 0 ACCEPT all -- * * 0.0.0.0/0 0.0.0.0/0 state RELATED,ESTABLISHED PHYSDEV match --physdev-out vif5.0
0 0 ACCEPT all -- * * 10.0.0.1 0.0.0.0/0 PHYSDEV match --physdev-in vif5.0
0 0 ACCEPT all -- * * 0.0.0.0/0 0.0.0.0/0 state RELATED,ESTABLISHED PHYSDEV match --physdev-out vif3.0
0 0 ACCEPT udp -- * * 0.0.0.0/0 0.0.0.0/0 PHYSDEV match --physdev-in vif3.0 udp spt:68 dpt:67
0 0 ACCEPT all -- * * 0.0.0.0/0 0.0.0.0/0 state RELATED,ESTABLISHED PHYSDEV match --physdev-out vif3.0
0 0 ACCEPT all -- * * 10.0.0.5 0.0.0.0/0 PHYSDEV match --physdev-in vif3.0
0 0 ACCEPT all -- * * 0.0.0.0/0 0.0.0.0/0 state RELATED,ESTABLISHED PHYSDEV match --physdev-out vif2.0
0 0 ACCEPT udp -- * * 0.0.0.0/0 0.0.0.0/0 PHYSDEV match --physdev-in vif2.0 udp spt:68 dpt:67
0 0 ACCEPT all -- * * 0.0.0.0/0 0.0.0.0/0 state RELATED,ESTABLISHED PHYSDEV match --physdev-out vif2.0
0 0 ACCEPT all -- * * 10.0.0.2 0.0.0.0/0 PHYSDEV match --physdev-in vif2.0
147 8236 ACCEPT tcp -- eth0 * 0.0.0.0/0 0.0.0.0/0 state NEW tcp dpt:80
13 546 ACCEPT udp -- eth0 * 0.0.0.0/0 0.0.0.0/0 udp dpt:1194
Chain OUTPUT (policy ACCEPT 1000 packets, 99240 bytes)
pkts bytes target prot opt in out source destination
~ # iptables -L -t nat -n -v
Chain PREROUTING (policy ACCEPT 324 packets, 23925 bytes)
pkts bytes target prot opt in out source destination
139 7824 DNAT tcp -- eth0 * 0.0.0.0/0 0.0.0.0/0 tcp dpt:80 to:10.0.0.5:80
1 42 DNAT udp -- * * 0.0.0.0/0 0.0.0.0/0 udp dpt:1194 to:10.0.0.1:1194
Chain POSTROUTING (policy ACCEPT 92 packets, 5030 bytes)
pkts bytes target prot opt in out source destination
863 64983 MASQUERADE all -- * eth0 0.0.0.0/0 0.0.0.0/0
0 0 MASQUERADE all -- * eth0 0.0.0.0/0 0.0.0.0/0
0 0 MASQUERADE all -- * eth0 0.0.0.0/0 0.0.0.0/0
Chain OUTPUT (policy ACCEPT 180 packets, 13953 bytes)
pkts bytes target prot opt in out source destination
답변1
나는 그것을 작동시킬 수 있었다. 실수는 패키지 전달 내부가 아니라 IP 라우팅 내부에 있었습니다. VPN 클라이언트가 10.0.0.0/24 네트워크를 찾을 수 있는 위치를 알고 있는지 확인해야 했습니다. OpenVPN의 push-route
.