2012-02-29 2 views
11

IPv6リンクローカルアドレスがインターフェイスで手動で削除された場合、インターフェイスをダウンさせずにリンクローカルアドレスを取得する方法はありますか。この要件は、インターフェイス上の既存の接続を(IPv4)で保持する必要があるだけでなく、その上にリンクローカルアドレスを取得することに由来します。リンクローカルアドレスの追加

+0

どのオペレーティングシステムですか?私はLinux上でテストし、リンクローカルアドレスを削除し、それを "うまくいく"と読みました。 – Celada

+0

Linuxの場合。私はあなたをかなり理解できませんでした、あなたはステップを詳しく説明できますか? – Maddy

+0

手順は[sleinen](http://stackoverflow.com/users/1187852/sleinen)によって既に詳述されています。インターフェイスにアドレスを追加するために通常使用するコマンドと同じものであることに注意してください。 – Celada

答えて

11

GNU/Linuxシステムでは、通常、 "ip"( "iproute"パッケージから)を使用してアドレスを設定します。リンクローカルアドレスは、次のようなものを使用して追加されます。

ip address add dev eth4 scope link fe80::21b:21ff:febb:5db0/64 

これを試しましたか?

リンクローカルアドレスとして使用する正確なアドレスがわからない場合は、通常、これらのアドレスはインターフェイスのハードウェア(MAC)アドレスから取得されます。

インターフェイスのMACアドレス(「ip link show dev ...」の結果の「link/ether」フィールド)を取り出し、this procedureに従ってModified EUI-64に変換します。

次に、 "fe80 ::"(標準リンクローカルプレフィックス)を左側に追加し、 "/ 64"(サブネットプレフィックス長として)を右側に追加します。

+0

ありがとうございます。私はこのアプローチを今のところ取るつもりです。 – Maddy

+1

リンクローカルアドレスは '$ ipv6calc --in prefix + mac fe80 :: $ MACADDR'で自動的に引き出すことができます – maxschlepzig