2016年1月4日月曜日

IPv6 3歩進んで3歩下がったところから

年末年始を挟んで、記憶が3歩後退してしまった。いろんな部分でやり直しだがしようがない。

ipv6 unicast-routing

続いてユニークローカルユニキャストアドレス、さらにULAのプリフィクスでエニィキャストを設定してみたところ、


interface Vlan1
 ip address 172.19.19.2 255.255.255.0
 ipv6 address FD00:0:115:1302::/64 anycast
 ipv6 address FD00:0:115:1302::1/64
 ipv6 address autoconfig
このように。autoconfigのリンクローカル、静的なULA、ULAでのanycast、もとのIPv4アドレスと相まってなんとややこしいことか。そりゃIPv6流行らんよ。もちろん「ややこしい」とはド初心者の後ろ向きで怠惰な発想であるわけだが、普及に向けてはひとつの障害ではあるし、キャズムにも近い。

ともあれ次。ここでさらに、インターフェースに対してIPv6をいねーぶるにしてみる。

interface Vlan1
 ip address 172.19.19.2 255.255.255.0
 ipv6 address FD00:0:115:1302::/64 anycast
 ipv6 address FD00:0:115:1302::1/64
 ipv6 address autoconfig
 ipv6 enable

#show ipv6 interface brief
(略)
FastEthernet9              [up/down]
    unassigned
Vlan1                      [up/up]
    FE80::226:99FF:FEC8:287C
    FD00:0:115:1302::
    FD00:0:115:1302::1
#

既にリンクローカルが設定されていて、ipv6 enable コマンドによって変わってはいない。また、この時点でipv6 route に


S   ::/0 [2/0]
     via FE80::2E54:ルータインターフェース, Vlan1

があらわれている。autoconfig のオプションに default は入れていない。ここで ipv6 address autoconfig の削除を試してみたところ、削除しただけでは消えないが、reload 後はこのエントリが消失した。とりあえずこの機材とバージョンの組み合わせにおいては、ipv6 address autoconfig においては default オプションがでふぉである可能性は念頭においておく。

ここで、もう1台のほうで autoconfig を消しつつ、ユニークローカルユニキャストアドレスを設定する。ここでULAは敢えてプリフィクスの65-80ビットで、もう一方のルータと異なる値を使う。未だにIPv6におけるネットワークアドレスの概念がまるでわかっちゃいないからだ。

当然、別ネットワークであればpingが通らないのだがリンクローカルアドレスは/64を越えて通ることがあったのでユニークローカルユニキャストアドレスにおいてはどうか?試した限りでは通らない。通らなくて当然なのだが、一方のルータにおいて S ::/0 がまたしても現れている。一方がRAの機能を果たした状態においてもう一方で autoconfig が設定しされていればまだしも、show run 上はそのようには見えない。どうにもすんなり理解がすすまない。RAの機能については

ipv6 nd ra suppress

で停止したところ、もう一方のスタティックルート(デフォルトルート)も消えた。こうなると 複数のルータがレイヤ2で共存する環境においては、RA機能のOFF/ONやあるいは優先度について注意が必要。ルータ間だけを考えれば全面停止すればいいだけのことだが、エンドノードが混じるセグメントでは面倒かもしれない。やってみればカンタンかもしれないが。ともあれ、

#show ipv6 route
IPv6 Routing Table - default - 3 entries
Codes: C - Connected, L - Local, S - Static, U - Per-user Static route
       B - BGP, HA - Home Agent, MR - Mobile Router, R - RIP
       H - NHRP, D - EIGRP, EX - EIGRP external, ND - ND Default
       NDp - ND Prefix, DCE - Destination, NDr - Redirect, O - OSPF Intra
       OI - OSPF Inter, OE1 - OSPF ext 1, OE2 - OSPF ext 2, ON1 - OSPF NSSA ext 1
       ON2 - OSPF NSSA ext 2, la - LISP alt, lr - LISP site-registrations
       ld - LISP dyn-eid, a - Application
C   FD00:0:115:13FE::/64 [0/0]
     via Vlan1, directly connected
L   FD00:0:115:13FE::1/128 [0/0]
     via Vlan1, receive
L   FF00::/8 [0/0]
     via Null0, receive
#
#
#ping ipv6 FD00:0:115:13FE::1
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to FD00:0:115:13FE::1, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 1/1/1 ms
#

ping ipv6 FD00:0:115:1302::1
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to FD00:0:115:1302::1, timeout is 2 seconds:

% No valid route for destination
Success rate is 0 percent (0/1)



ping ipv6 を でばっぐな中身はこのような。

Jan  4 09:55:43.998: IPv6-Fwd: Destination lookup for FE80::226:99FF:FEC8:287C : i/f=Vlan1, nexthop=FE80::226:99FF:FEC8:287C
Jan  4 09:55:43.998: IPV6: source FE80::2E54:2DFF:FE99:B815 (local)
Jan  4 09:55:43.998:       dest FE80::226:99FF:FEC8:287C (Vlan1)
Jan  4 09:55:43.998:       traffic class 0, flow 0x0, len 100+0, prot 58, hops 64, originating
Jan  4 09:55:43.998: IPv6-Fwd: Sending on Vlan1
Jan  4 09:55:49.098: IPV6: source FE80::2E54:2DFF:FE99:B815 (local)
Jan  4 09:55:49.098:       dest FE80::226:99FF:FEC8:287C (Vlan1)
Jan  4 09:55:49.098:       traffic class 224, flow 0x0, len 72+0, prot 58, hops 255, originating
Jan  4 09:55:49.098: IPv6-Fwd: Created tmp mtu cache entry for FE80::2E54:2DFF:FE99:B815 FE80::226:99FF:FEC8:287C 00000000
Jan  4 09:55:49.098: IPv6-Fwd: Sending on Vlan1
Jan  4 09:55:49.098: IPv6-Fwd: Destination lookup for FE80::2E54:2DFF:FE99:B815 : Local, i/f=Vlan1, nexthop=FE80::2E54:2DFF:FE99:B815
Jan  4 09:55:49.098: IPV6: source FE80::226:99FF:FEC8:287C (Vlan1)
Jan  4 09:55:49.102:       dest FE80::2E54:2DFF:FE99:B815 (Vlan1)
Jan  4 09:55:49.102:       traffic class 224, flow 0x0, len 64+14, prot 58, hops 255, forward to ulp


IPv6はpingのデバッグメッセージひとつも見る手間が大きい。


ともあれ、リンクローカルアドレスはこの言葉の通り、L2と同義とは捉えないがリンクなレイヤ、のアドレスとして、IPv4におけるアドレスの概念とは完全に異なることがやっとわかりかけてきた。

この一方でRAの機能がそもそも有効かそうでないか、についてますます混乱してきた。ルータ側で

 ipv6 nd ra suppress

が設定されていても、このインターフェース配下のWindows PCにおいては、ユニークローカルユニキャストなIPv6アドレスが自動設定され、これだけでなくてデフォルトゲートウェイまでもこのVLAN宛になっているからだ。

さぷ
http://ejje.weblio.jp/content/suppress

と思いきや、今見たところWindwosのIPv6のでふぉげが消えている。どうにもWindows側の挙動がわかっていない。いーじす先生の解説によると

IPv6 - Windows7
http://www.infraexpert.com/study/ipv6z9.html

テスト環境殿動作状況は、


C:\Windows\system32>netsh interface ipv6 show interface 3

インターフェイス イーサネット パラメーター
----------------------------------------------
IfLuid                             : ethernet_0
IfIndex                            : 3
状態                               : connected
メトリック                         : 20
リンク MTU                         : 1500 バイト
到達可能な時間                     : 36000 ミリ秒
基本の到達可能な時間               : 30000 ミリ秒
再転送間隔                         : 1000 ミリ秒
DAD 転送                           : 1
サイト プレフィックスの長さ        : 64
サイト ID                          : 1
転送                               : disabled
アドバタイズ                       : disabled
近隣探索                           : enabled
近隣到達不可能性検出               : enabled
ルーター発見                       : enabled
管理されたアドレス構成             : disabled
その他のステートフル構成           : disabled
脆弱なホストによる送信             : disabled
脆弱なホストによる受信             : disabled
自動メトリックの使用               : enabled
既定ルートを無視                   : disabled
アドバタイズされたルーターの有効期間: 1800 秒
既定ルートのアドバタイズ           : disabled
現在のホップ制限                   : 64
ARPND スリープ解除パターンの強制   : disabled
指定の MAC スリープ解除パターン    : disabled
ECN 機能                           : application


C:\Windows\system32>


有効期間はルータ側で設定した値となっておらず、先生の解説事例と同じ値だ。でふぉげの値が見られないことからも、ルータとのやりとりは無効かあるいは無視しているようだ。となると、ユニークローカルユニキャストアドレスの生成はRAとは別物ということか?キリがないので次。


DRP、でふぉるとるーたーぷりふぁれんす、の設定。


(config-if)#ipv6 nd router-preference ?
  High    High default router preference
  Low     Low default router preference
  Medium  Medium default router preference

インターフェース毎。ネイバーディスカバリの設定の一部、というところが従来の私の独自カンカクとずれるところ。どっちがずれているのか?といえば当然私のほうだが。誤3でないとらえ方のひとつはこちら様など。


UnixPower on Networking IPv6の挙動
http://www.unix-power.net/routing/ipv6_behavior.html


次に、通知するぷれふぃくす関連の設定について。ここではWindows側の挙動の確認も含めてライフタイムのみならずほかも変えてみる。

と、その前に2台のルータのうち一方は明示的に ip6 nd ra suppress をかけておかないと事情の把握に混乱をきたす。ただでさえ混乱してるのに。また、ルータのもう一方では

no ipv6 nd ra suppress

を明らかに設定・・・というか解除したところ、


(config-if)#no ipv6 nd ra suppress
(config-if)#
Jan  4 11:02:00.843: %IPV6_ND-4-RA_TIMERS_INCONSISTENT: Configured Router Advertisements interval exceeds the configured RA lifetime on Vlan1.
Jan  4 11:02:01.363: IPV6: source FE80::2E54:2DFF:FE99:B815 (local)
Jan  4 11:02:01.363:       dest FF02::1 (Vlan1)
Jan  4 11:02:01.363:       traffic class 224, flow 0x0, len 104+0, prot 58, hops 255, originating
Jan  4 11:02:01.363: IPv6-Fwd: Sending on Vlan1
Jan  4 11:02:01.399: IPV6: source FE80::EC3D:80D5:E7EA:9FA0 (Vlan1)
Jan  4 11:02:01.399:       dest FF02::1:FF99:B815
Jan  4 11:02:01.399:       traffic class 0, flow 0x0, len 72+14, prot 58, hops 255, forward to ulp
Jan  4 11:02:01.403: IPV6: source FE80::2E54:2DFF:FE99:B815 (local)
Jan  4 11:02:01.403:       dest FE80::EC3D:80D5:E7EA:9FA0 (Vlan1)

(config-if)#


直ちにRAが機能したことを示すデバッグ(IPv6パケット)が。

ここで、ルータを電源OFF。PCを再起動し単独状態での ipconfig /all 、表示内容から前のユニークローカルユニキャストアドレス及びでふぉげが消えていることを確認。

次に RAでないルータを起動し、このルータ上でユニークローカルユニキャストアドレスが設定されていることを確認。ここでPCを再起動しても、PCではリンクローカルアドレスが動作するのみで、ユニークローカルユニキャストアドレスは生成していないしでふぉげも得ていない。

また、RAであるルータを起動した後にPCを再起動すると、PCはユニークローカルユニキャストアドレスを生成しデフォゲも得ていた。この時PCにおいては


インターフェイス イーサネット パラメーター
----------------------------------------------
IfLuid                             : ethernet_0
IfIndex                            : 3
状態                               : connected
メトリック                         : 20
リンク MTU                         : 1500 バイト
到達可能な時間                     : 36500 ミリ秒
基本の到達可能な時間               : 30000 ミリ秒
再転送間隔                         : 1000 ミリ秒
DAD 転送                           : 1
サイト プレフィックスの長さ        : 64
サイト ID                          : 1
転送                               : disabled
アドバタイズ                       : disabled
近隣探索                           : enabled
近隣到達不可能性検出               : enabled
ルーター発見                       : enabled
管理されたアドレス構成             : disabled
その他のステートフル構成           : disabled
脆弱なホストによる送信             : disabled
脆弱なホストによる受信             : disabled
自動メトリックの使用               : enabled
既定ルートを無視                   : disabled
アドバタイズされたルーターの有効期間: 1800 秒
既定ルートのアドバタイズ           : disabled
現在のホップ制限                   : 64
ARPND スリープ解除パターンの強制   : disabled
指定の MAC スリープ解除パターン    : disabled
ECN 機能                           : application

RAなPCの設定で

(config-if)# ipv6 nd ra interval
(config-if)# ipv6 nd ra lifetime

これらを変更した後、これらを削除した後いずれも、PC側のステータスは変わっていない。ここがPC側に伝搬されるものかと思っていたがどうも違うようだ。

infinite
http://ejje.weblio.jp/content/infinite


IPv6-R1(config-if)#ipv6 nd ?
  advertisement-interval  Send an advertisement interval option in RA's
  autoconfig              Automatic Configuration
  cache                   Cache entry
  dad                     Duplicate Address Detection
  destination-guard       Query destination-guard switch table
  managed-config-flag     Hosts should use DHCP for address config
  na                      Neighbor Advertisement control
  ns-interval             Set advertised NS retransmission interval
  nud                     Neighbor Unreachability Detection
  other-config-flag       Hosts should use DHCP for non-address config
  prefix                  Configure IPv6 Routing Prefix Advertisement
  ra                      Router Advertisement control
  reachable-time          Set advertised reachability time
  router-preference       Set default router preference value

IPv6-R1(config-if)#ipv6 nd prefix 2001:ffff:eeee:dddd::/64 ?
  <0-4294967295>  Valid Lifetime (secs)
  at              Expire prefix at a specific time/date
  infinite        Infinite Valid Lifetime
  no-advertise    Do not advertise prefix
  <cr>

IPv6-R1(config-if)#ipv6 nd prefix 2001:ffff:eeee:dddd::/64 60 ?
  <0-4294967295>  Preferred Lifetime (secs)
  infinite        Infinite Preferred Lifetime

IPv6-R1(config-if)#ipv6 nd prefix 2001:ffff:eeee:dddd::/64 60 40
IPv6-R1(config-if)#

ルータ側を再設定したところで、Windows側をリセット。

C:\Windows\system32>netsh interface ipv6 reset
インターフェイス のリセットに成功しました。
近隣 のリセットに成功しました。
パス のリセットに成功しました。
 のリセットに失敗しました。
アクセスが拒否されました。

 のリセットに成功しました。
 のリセットに成功しました。
コンピューターを再起動してこの操作を完了してください。


C:\Windows\system32>


・・・このメッセージからすると、つまるところ再起動が必要ではないのか!?と懸念する。実際、直後に ipconfig /all を叩いても、ユニークローカルユニキャストのアドレスのままであって、ルータで設定した仮グローバルのプリフィクスはPCに反映されなかった。


というわけで、PC再起動と共に次回。






0 件のコメント:

コメントを投稿