SSブログ

auひかりのホームゲートウェイを置換する その3 (2017/01/19) [ネットワーク機器]

とりあえず、一定時間毎の認証を除けばちゃんと繋がっているので、そちらについてまとめます。
※HGW=ホームゲートウェイ(キャリアから提供される終端装置)
※ISP=インターネットサービスプロバイダ(インターネット接続提供者)

■IPv4でDHCP取得する方法
DHCP要求の送信元MACアドレスもしくは、DHCP要求時のクライアントID(MACアドレスが埋め込まれる)をチェックしているようです。CISCOの場合、双方に対応するようカスタマイズできるので、下記でOKです。(インタフェース名は適宜読み替えて下さい)
なお、偽装するMACアドレスはHGWの管理画面に表示されるWAN側のMACアドレスになります。
interface GigabitEthernet0/4
 mac-address aaaa.bbbb.cccc
 ip dhcp client client-id GigabitEthernet0/4
 ip address dhcp


■IPv6でDHCPv6取得する方法
こちらは少し悩みました。auひかりの場合、DHCPv6でprefix delegationを実装しています。prefix delegationとは、サブネット管理の委譲であり、簡単に言えば、IPアドレスを払い出して貰うのではなく、ネットワークアドレスを丸ごと払い出して貰う仕組みです。
もちろんCISCOはDHCPv6のpdに対応しており、そのコマンドもあります。CISCOルータがパケットを送出していることも確認していますが、ISP側から応答がありません。IPv4のDHCPのように何かしらのチェック機構が働いているのだと思いました。

ま、そんなときはパケットキャプチャです。するとIPv4 DHCPのクライアントIDに相当するDUIDというものがあり、それをDHCPv6要求パケットに埋め込んでいるようでした。HGWとCISCOとでは、その値が異なっていることまで確認したのですが、CISCOにはそれを変更する設定がありません。
Router#show ipv6 dhcp
This device's DHCPv6 unique identifier(DUID): 000300010123abc123abc

ここで挫折かと思われましたが、CISCOマニュアルに下記のような記述を発見しました。
各 DHCPv6 クライアントとサーバは、DHCP Unique Identifier(DUID; DHCP 固有識別子)によって識別されます。DUID は、クライアント識別子およびサーバ識別子オプションで伝送されます。DUID はすべての DHCP クライアントとサーバで一意であり、特定のクライアントまたはサーバに固定されます。DHCPv6 では、クライアントとサーバの両方の識別子にリンク層アドレスに基づく DUID を使用します。デバイスは、最も小さい番号のインターフェイスの MAC アドレスを使用して DUID を形成します

そう、確かに表示されるDUIDは、最も小さい番号のインターフェイスGi0/0のMACアドレスから算出した値になっているのです。ならばと下記を設定してみました。
interface GigabitEthernet0/0
 mac-address aaaa.bbbb.cccc

この段階でshow ipv6 dhcpコマンドの結果は変わりません。失敗かと思ったのですが、show interfaceコマンドを確認すると、下記のように表示されたのです。
GigabitEthernet0/0 is up, line protocol is up
  Hardware is Gigabit Ethernet, address is aaaa.bbbb.cccc (bia 123abc.123abc.123abc)
aaaa.bbbb.ccccは設定した偽装MACアドレスであり、123abc.123abc.123abcは装置が本来有している実MACアドレスです。私の想定とは表示場所が逆でした。aaaa.bbbb.ccccは上辺のなんちゃってMACアドレスなので、bia側に来ると思っていたのでが、この表示結果だとより深い階層にあると思われるハードウェアMACアドレスがaaaa.bbbb.ccccとなっているのです。

微妙な閃きがあり、上記コンフィグをwriteで保持したまま再起動してみました。おそるおそるshow ipv6 dhcpコマンドを発行してみると…
Router#show ipv6 dhcp
This device's DHCPv6 unique identifier(DUID): 000300010aaaabbbbcccc
と、書き換えに成功してしまいました。auひかり側に改めて接続し直してみると、DHCPv6 pdが成功しました。
ちゃんと成功していれば、show ipv6 dhcp interfaceの結果にfe80:で始まらないグローバルIPアドレスが振られていることが確認できると思います。
タグ:cisco auひかり
nice!(0)  コメント(1) 
共通テーマ:日記・雑感

nice! 0

コメント 1

mizro

貴重な情報をありがとうございます。
BL902HWというホームゲートウェイをNTT VH-100(VDSLモデム)とBUFFALO WSR-1166DHP4(無線親機)に置換しています。
取説にはLAN側インターフェースIDを手動設定してグローバルアドレスのインターフェースID部を設定できるようになっているのですが不具合なのか書き換わらず、IPv6は通りません。NEC WG2600HP3も試しましたがグローバルアドレスの設定項目もなく。コマンドが使えるといろいろなことができるのですね。
by mizro (2020-07-08 22:36) 

コメントを書く

お名前:
URL:
コメント:
画像認証:
下の画像に表示されている文字を入力してください。