■Linuxマシン側で、IPv6リンクローカルアドレスを取得した。
RTX1100のLAN1ポートと、Linux側のLANポートをストレートケーブルで接続した。
(当然、電源を入れること。)
$ nmcli device
デバイス タイプ 状態 接続上記の例で、RTX1100にはenp5s0デバイスのLANポートから物理的に繋がっている。
wlp4s0 wifi 接続済み wlp4s0
enp5s0 ethernet 切断済み --
lo loopback 管理無し --
そのため、次のようにしてenp5s0の接続を有効化した。
(ただし、enp5s0という名称でデフォルトの接続情報が存在しているものとする。)
$ nmcli con up enp5s0
エラー: 接続のアクティベートに失敗しました。以上のように、IPv4アドレスの取得に失敗し、下記のように取得中となる。
$ nmcli device
デバイス タイプ 状態 接続
wlp4s0 wifi 接続済み wlp4s0
enp5s0 ethernet 接続中(IP 設定を取得中) enp5s0
lo loopback 管理無し --
しかし、調べると次のようにIPv6のリンクローカルアドレスは設定された。
$ ip a
2: enp5s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP qlen 1000
link/ether xx:75:xx:xx:xx:xx brd ff:ff:ff:ff:ff:ff
inet6 fe80::xx75:xxxx:xxxx:xxxx/64 scope link
valid_lft forever preferred_lft forever
■LinuxマシンからRTX1100のIPv6リンクローカルアドレスにpingを打った。
最初に、RTX1100のLAN1ポートのIPv6リンクローカルアドレスを推測した。
RTX1100のLAN1のIPv6リンクローカルアドレスはLAN1のMACアドレスから作成されている。
<IPv6リンクローカルユニキャストアドレスの推測手順>
0、LAN1ポートのMACアドレスを確認する。(ルーターの裏側シールに書いてある。)
(例)1、MACアドレスの7bit目を反転させる。
00:a0:xx:xx:xx:xx
コロンで区切られている各領域は8bit(即ち、1文字は4bit)である。
7bit目は、上記着色した最初のコロンまでの2文字(4bit×2)内にある。
bit表示すると次のようになるので、7bit目を反転させ、0から1にする。
その結果、下記のとおり、最初のコロンまでの2文字(4bit×2)が00から02になる。
0000 0000 = 002、MACアドレスの上下24bitの真ん中に、ff:fe を挟む。
↓反転
0000 0010 = 02
02:a0:xx:xx:xx:xx
02:a0:xx:ff:fe:xx:xx:xx3、先頭にfe80::を付け加える。
(::はIPv6の省略表記の一種で、全体が128bitの長さになるまでその場を0で埋める。)
fe80::02:a0:xx:ff:fe:xx:xx:xx4、IPv6アドレスは、16bitずつに区切るように表記して完成させる。
(:02a0: のように16bit区域の先頭4bitが0の場合、省略可能である。:2a0: でも良い。)
fe80::02a0:xxff:fexx:xxxx
テストとして接続先のRTXのリンクローカルアドレスに向けて、pingを打ってみた。
$ ping6 fe80::2a0:xxff:fexx:xxxx%enp5s0
PING fe80::2a0:xxff:fexx:xxxx%enp5s0(fe80::2a0:xxff:fexx:xxxx%enp5s0) 56 data bytesうまくアクセスできることが確認できた。
64 bytes from fe80::2a0:xxff:fexx:xxxx%enp5s0: icmp_seq=1 ttl=64 time=1.24 ms
64 bytes from fe80::2a0:xxff:fexx:xxxx%enp5s0: icmp_seq=2 ttl=64 time=0.609 ms
64 bytes from fe80::2a0:xxff:fexx:xxxx%enp5s0: icmp_seq=3 ttl=64 time=0.609 ms
^C
(注意)
このアクセスが可能な時間は、IPv4アドレスの取得を試行している間だけである。
試行が終了すると、次の試行までアクセスできなくなってしまう。
■続けてRTX1100にtelnet接続を行って、必要なIPv4アドレスの設定を行った。
telnetで同アドレスにアクセスし、予め用意した最小限のIPv4設定をコピー&ペーストで設定した。
(わずかな時間しかないのでペーストくらいしかできない。しかし切断されてもしばらく待っていると再びアクセスできるようになった。)
$ telnet fe80::2a0:xxff:fexx:xxxx%enp5s0
> administrator
Password:
# ip lan1 secondary address 192.168.100.1/24
#
# dhcp service server
#
# dhcp scope 2 192.168.100.10-192.168.100.254/24
#
# save
セーブ中... CONFIG0 終了
■RTX1100に設定したIPv4アドレスで接続した。
RTXの基本設定完了後、Linux側でIPv4アドレスをDHCPで取得した。
$ nmcli con up enp5s0
RTXにIPv4アドレスでアクセスして、後はゆっくりと必要な設定を行う。
$ telnet 192.168.100.1
以上
<参考>
・IPv6 リンクローカル・ユニキャストアドレスの割り当て
< http://www.itbook.info/study/ipv6-7.html > 2017年1月9日