web-dev-qa-db-ja.com

IPSecトランスポートのリモートエンドは、GREをいじった後、ループバックに「永続的に接着」されます

したがって、racoonを使用して2つのホスト間でESP)を介してIPSecトランスポートを取得することができました: 'ローカル'ホスト1.1.1.1とリモート2.2.2.2。ICMPでのみ機能しました(他のトラフィックはSAを無視しました)が、それは別の問題です。すべてのトラフィックが安全なトランスポートを通過できるようにするために、setkey構成から

 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ヘッダーと一緒に。

基本的に、これが機能した後に行ったのは、両側にGREトンネルをセットアップすることです。これは、私の知る限り正しく構成されていましたが、覚えている限り、IPSecによって処理されることはありませんでした。 (トンネル/エンドポイントアドレスは正しく、ルーティングは適切でした)。いずれにせよ、私はこの端でgre1を破壊し、downed gre0を破壊しましたが、これは破壊できないようです。

これで、2.2.2.2へのすべてのトラフィックがloにリダイレクトされます(tcpdumpによる)。これはこのアドレスに関連付けられていません。 routeも、iptables転送などもありません。また、/etc/hostsには何もありません。これは、racoonが実行されているかどうかに関係なく、ICMPで機能したのとまったく同じ構成(つまり、上記の最初の構成)に戻された場合でも持続します。

再起動せずに「正しい」状態に戻したいのですが、それ以上に、これまでに述べたことを考えると、この動作がどのように可能であるかに興味があります。役立つ場合は、追加の詳細を提供させていただきます。

[〜#〜] edit [〜#〜] Lairsdragonの要求に応じて、追加の出力:

ip address

 1:lo:mtu 65536 qdisc noqueue state UNKNOWN group default 
 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 
 inet 127.0.0.1/8スコープホストlo 
 valid_lft forever Preferred_lft forever 
 inet6 :: 1/128スコープホスト
 valid_lft forever Preferred_lftforever 
 2: dumpy0:mtu 1500 qdisc noop state DOWN group default 
 link/ether 0e:09:76:da:e2:22 brd ff:ff:ff:ff:ff:ff 
 3:eth0: mtu 1500 qdisc pfifo_fast state UP group default 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 
 valid_lft forever Preferred_lft forever 
 inet6 ---/64 scope global mngtmpaddr dynamic 
 valid_lft 2591995sec Preferred_lft 604795sec 
 inet6-- -/ 64スコープリンク
 valid_lft forever Preferred_lft forever 
 4:teql0:mtu 1500 qdisc noop state DOWN group default qlen 100 
 link/void 
 5:tunl0 @ NONE:mtu 1480 qdisc noop state DOWN group default 
 link/ipip 0.0.0.0 brd 0.0.0.0 
 6:gre0 @ NONE:mtu 1476 qdisc noqueue state DOWN groupデフォルト
 link/gre 1.1.1.1 brd 2.2.2.2 
 inet 2.2.2.2/8スコープグローバルgre0 
 valid_lft forever Preferred_lft forever 
 inet 10.0.0.1/32 scope global gre0 
 valid_lft forever Preferred_lft forever 
 7:gretap0 @ NONE:mtu 1462 qdisc noop state DOWN group default qlen 1000 
 link/ether 00:00:00:00:00 :00 brd ff:ff:ff:ff:ff:ff 
 8:ip_vti0 @ NONE:mtu 1428 qdisc noop state DOWN group default 
 link/ipip 0.0.0.0 brd 0.0.0.0 
 9:ip6_vti0:mtu 1500 qdisc noop state DOWN group default 
 link/tunnel6 :: brd :: 
 10:sit0:mtu 1480 qdisc noop state DOWN group default 
 link/sit 0.0.0.0 brd 0.0.0.0 
 11:ip6tnl0:mtu 1452 qdisc noop state DOWN group default 
 link/tunnel6 :: brd :: 
 12:ip6gre0:m tu 1448 qdisc noop state DOWN group default 
 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:00 

ip route show 2.2.2.2

 local 2.2.2.2 dev lo src 2.2.2.2 
 cache 

ip xfrm policy

 src 1.1.1.1/32 dst 2.2.2.2/32 proto tcp 
 dir out priority 2147483648 
 tmpl src 0.0.0.0 dst 0.0.0.0 
 proto esp reqid 0モードトランスポート
 src1.1.1.1/32 dst 2.2.2.2/32 proto udp 
 dir out priority 2147483648 
 tmpl src 0.0.0.0 dst 0.0.0.0 
 proto esp reqid 0 mode transport 
 src 1.1.1.1/32 dst 2.2.2.2/32 proto icmp 
 dir out priority 2147483648 
 tmpl src 0.0.0.0 dst 0.0.0.0 
 proto esp reqid 0 mode transport 
 src 2.2.2.2/32 dst1.1.1.1/32
dirfwd priority 2147483648 
 tmpl src 0.0.0.0 dst 0.0.0.0 
 proto esp reqid 0 mode transport 
 src 2.2.2.2/32 dst1.1.1.1/32
dirin priority 2147483648 
 tmpl src 0.0.0.0 dst 0.0.0.0 
 proto esp reqid0モードトランスポート
 src 0.0.0.0/0 dst 0.0.0.0/0
ソケットo ut優先度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 

10.0.0.1のそこにip addressがあることに気付くでしょう。これは、私が作成しようとしていたトンネルのローカルエンドポイントでした。 (また、ここで顔を保存するために、ip route showで関連する出力は表示されませんでした。確かに、ここでip route get 2.2.2.2で表示されるものではありません:/)

2
A__A__0

私はあなたのネットワークのものをクリアするために次のコマンドを実行することを提案したいです:

Ipsecトランスフォームセットをクリアします

ip xfrm policy flush
ip xfrm state flush

未使用のgreトンネルからIPアドレスをクリアします。

ip address flush dev gre0

これにより、実行中のネットワーク構成から不要な部分が削除されます。ディストリビューションの設定ファイルからも削除してください。

編集:A__A__0コメントに従って、gre0インターフェイスから@NONEを削除しました。

0
Lairsdragon