我正在尝试在同一网络中的两个虚拟机(R2 R3)之间配置IPSEC隧道,其中一个虚拟机将作为路由器(R2)工作,这样我就可以通过IPSEC隧道将数据从第三个虚拟机(R1)发送到R3。
我建立了以下拓扑:

我更改了错误的IP地址,但虚拟机位于同一网络中,因此可能类似于R3: 1.2.3.4,R2: 1.2.3.5,R1: 1.2.3.6
R3 VM /etc/ipsec.d/mytunel.conf的配置:
config setup
protostack=netkey
#conn mysubnet
# also=mytunnel
# leftsubnet=10.0.1.1/24
# rightsubnet=10.0.0.1/24
# auto=start
conn mytunnel
left=4.6.7.8
right=1.2.3.4
authby=secret
leftsubnet=10.0.1.1/24
rightsubnet=10.0.0.1/24
auto=start
# route-based VPN requires marking and an interface
mark=5/0xffffffff
vti-interface=vti03
# do not setup routing because we don't want to send 0.0.0.0/0 over the tunnel
vti-routing=yes
# If you run a subnet with BGP (quagga) daemons over IPsec, you can configure the VTI interface
leftvti=10.0.7.1/24配置R2 /etc/ipsec.d/mytunel.conf:
config setup
protostack=netkey
#conn mysubnet
# also=mytunnel
# leftsubnet=10.0.1.1/24
# rightsubnet=10.0.0.1/24
# auto=start
conn mytunnel
left=4.6.7.8
right=1.2.3.4
authby=secret
leftsubnet=10.0.1.1/24
rightsubnet=10.0.0.1/24
auto=start
# route-based VPN requires marking and an interface
mark=5/0xffffffff
vti-interface=vti03
# do not setup routing because we don't want to send 0.0.0.0/0 over the tunnel
vti-routing=yes
# If you run a subnet with BGP (quagga) daemons over IPsec, you can configure the VTI interface
leftvti=10.0.7.1/24通过上面的配置,我可以使用ping -I 10.0.1.1 10.0.0.1从R2 ping R3
在R1机器上,我配置了静态路由:
root@9.10.11.12:~# ip route
default via 9.10.11.1 dev ens18 onlink
10.0.0.0/24 via 5.6.7.8 dev ens18
10.0.1.0/24 via 5.6.7.8 dev ens18但是,当我想通过R2从R1 ping 10.0.0.1时,它会给出icmp_seq=1 Destination Host Unreachable
为了让R1可以通过10.0.1.1版本的R2 dummy0接口看到R3,我应该做什么更改?
谢谢你的帮助!
发布于 2021-01-13 18:17:39
我更改了拓扑,现在通过R3向R2 VTI vti03接口10.0.7.1/24发送ping,但.conf文件略有不同:
leftsubnet=0.0.0.0/0
rightsubnet=0.0.0.0/0https://stackoverflow.com/questions/65699259
复制相似问题