所以,我设法使用racoon
在两个主机之间通过ESP获得IPSec传输:“本地”主机1.1.1.1
和远程2.2.2.2
。 它只适用于ICMP(其他stream量忽略了SA),但这是一个单独的问题。 为了试图让所有的stream量穿越安全的交通工具,我决定build立一个GRE隧道,改变我的setkey
configuration
spdadd 2.2.2.2 1.1.1.1 any -P in ipsec esp / transport // require; spdadd 1.1.1.1 2.2.2.2 any -P out ipsec esp / transport // require;
至
spdadd 2.2.2.2 1.1.1.1 gre -P in ipsec esp / transport // require; spdadd 1.1.1.1 2.2.2.2 gre -P out ipsec esp / transport // require;
随着flush; spdflush
flush; spdflush
头。
从本质上讲,我在这之后所做的工作就是设置双方的GRE隧道,据我所知尽可能正确configurationGRE隧道,但最终没有经过IPSec处理,据我所知。 (隧道/端点地址是正确的,路由到位)。 无论如何,我在这个结尾摧毁了gre1
,然后down
gre0
,这似乎不是可销毁的。
现在,所有到2.2.2.2
stream量都被redirect到lo
(根据tcpdump),而这个地址并不关联。 没有route
,也没有任何iptables
转发或类似的东西,没有在/etc/hosts
。 无论racoon
是否正在运行 – 即使它返回到与ICMP一起使用的完全相同的configuration(即上面的第一个configuration),这仍然存在。
我想返回到“正确的”状态,而不用重新启动,但更重要的是,我对迄今为止所说的这种行为是可能的感兴趣。 如果他们有帮助,很乐意提供更多的细节。
按照Lairsdragon的要求, 编辑额外的输出:
ip address
1:lo:mtu 65536 qdisc noqueue state UNKNOWN组默认 链接/回放00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8作用域主机lo 永远永远的preferred_lft永久valid_lft inet6 :: 1/128作用域主机 永远永远的preferred_lft永久valid_lft 2:dummy0:mtu 1500 qdisc noop state DOWN组默认值 link / ether 0e:09:76:da:e2:22 brd ff:ff:ff:ff:ff:ff 3:eth0:mtu 1500 qdisc pfifo_fast状态UP组默认qlen 1000 link / ether f2:3c:91:50:42:a1 brd ff:ff:ff:ff:ff:ff inet 1.1.1.1/24 brd 1.1.1.255 scope global eth0 永远永远的preferred_lft永久valid_lft inet6 --- / 64范围全局mngtmpaddrdynamic valid_lft 2591995sec preferred_lft 604795sec inet6 --- / 64范围链接 永远永远的preferred_lft永久valid_lft 4:teql0:mtu 1500 qdisc noop状态DOWN组默认qlen 100 链接/空白 5:tunl0 @NONE:mtu 1480 qdisc noop state DOWN组默认值 link / ipip 0.0.0.0 brd 0.0.0.0 6:gre0 @NONE:mtu 1476 qdisc noqueue state DOWN组默认值 link / gre 1.1.1.1 brd 2.2.2.2 inet 2.2.2.2/8 scope global gre0 永远永远的preferred_lft永久valid_lft inet 10.0.0.1/32 scope global gre0 永远永远的preferred_lft永久valid_lft 7:gretap0 @ NONE:mtu 1462 qdisc noop state DOWN组默认qlen 1000 链接/以太网00:00:00:00:00:00 brd ff:ff:ff:ff:ff:ff 8:ip_vti0 @ NONE:mtu 1428 qdisc noop state DOWN组默认值 link / ipip 0.0.0.0 brd 0.0.0.0 9:ip6_vti0:mtu 1500 qdisc noop state DOWN组默认值 link / tunnel6 :: brd :: 10:sit0:mtu 1480 qdisc noop state DOWN组默认值 link / sit 0.0.0.0 brd 0.0.0.0 11:ip6tnl0:mtu 1452 qdisc noop state DOWN组默认值 link / tunnel6 :: brd :: 12:ip6gre0:mtu 1448 qdisc noop state DOWN组默认值 link / gre6 00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00 brd 00:00:00:00:00:00:00 :00:00:00:00:00:00:00:00
ip route show 2.2.2.2
本地2.2.2.2 dev lo src 2.2.2.2 高速caching
ip xfrm policy
src 1.1.1.1/32 dst 2.2.2.2/32 proto tcp 目录优先2147483648 tmpl src 0.0.0.0 dst 0.0.0.0 原型esp reqid 0模式传输 src 1.1.1.1/32 dst 2.2.2.2/32 proto udp 目录优先2147483648 tmpl src 0.0.0.0 dst 0.0.0.0 原型esp reqid 0模式传输 src 1.1.1.1/32 dst 2.2.2.2/32 proto icmp 目录优先2147483648 tmpl src 0.0.0.0 dst 0.0.0.0 原型esp reqid 0模式传输 src 2.2.2.2/32 dst 1.1.1.1/32 目录优先权2147483648 tmpl src 0.0.0.0 dst 0.0.0.0 原型esp reqid 0模式传输 src 2.2.2.2/32 dst 1.1.1.1/32 目录优先2147483648 tmpl src 0.0.0.0 dst 0.0.0.0 原型esp reqid 0模式传输 src 0.0.0.0/0 dst 0.0.0.0/0 套接字优先级为0 src 0.0.0.0/0 dst 0.0.0.0/0 套接字优先级为0 src 0.0.0.0/0 dst 0.0.0.0/0 套接字优先级为0 src 0.0.0.0/0 dst 0.0.0.0/0 套接字优先级为0
你会注意到在ip address
上有一个10.0.0.1
,这是我试图build立的隧道的本地端点。 (另外,这里只是为了省面子,我没有看到任何与ip route show
相关的输出,当然不是我们在这里看到的用ip route get 2.2.2.2
)
我喜欢build议执行以下命令清除您的networking的东西:
清除ipsec转换集
ip xfrm policy flush ip xfrm state flush
清除未使用的gre
隧道的IP地址:
ip address flush dev gre0
这应该从正在运行的networkingconfiguration中删除不需要的部分。 请确保从你的发行版configuration文件中删除这些东西。
编辑 :根据A__A__0注释从gre0接口中删除@NONE。