[Dev] IPv6ってどんな感じ

in #japanese3 days ago (edited)

こんにちは、@yasuです。

週末のプログラミング記事です。今日は火曜日ですが。

今回は、IPv6についてです。

  • 1つのネットワーク(/64)で2の64乗(約184京)個のアドレスが使える(ほとんど無限大)
  • IPv6では基本的に1台にグローバルIPを直接割り当てるので、アドレス変換(NAT)がいらない
  • 1台のPCで複数アドレスを持つことができ、privacy address(ランダム)にアドレスを持つこともできる

内部でアクセス

IP4アドレスをIP6アドレスにしてみる
IP4
curl http://192.168.0.8:8080

なんちゃってIP6 (通信はIP4)
curl http://[::ffff:192.168.0.8]:8080

IP6
curl http://[240f:54:d80d:1:8186:d9a4:3aaa:f2a1]:8080

ifconfigコマンドIP4のアドレス192.168.0.8を探す
image.png

240f: 外部からアクセスできるアドレス
fe80: 👉 fe80:: はローカルネットワーク内限定

IP6
curl http://[fe80::e147:ba57:f3b1:7208%enp0s31f6]:8080

外部からアクセス

ルーター
ポートマッピング設定 エントリ追加(8888ポート追加)
image.png

Pv6ホスト公開デフォルト設定(遮断⇒公開)
image.png

まとめ

内部
curl http://192.168.0.8:8080
curl http://[::ffff:192.168.0.8]:8080
curl http://[240f:54:d80d:1:8186:d9a4:3aaa:f2a1]:8080
curl http://[fe80::e147:ba57:f3b1:7208%enp0s31f6]:8080
内部
curl --data '{"jsonrpc":"2.0","id":0,"method":"hive.db_head_state","params":{}}' http://192.168.0.8:8080
curl --data '{"jsonrpc":"2.0","id":0,"method":"hive.db_head_state","params":{}}' http://[::ffff:192.168.0.8]:8080
curl --data '{"jsonrpc":"2.0","id":0,"method":"hive.db_head_state","params":{}}' http://[240f:54:d80d:1:8186:d9a4:3aaa:f2a1]:8080
curl --data '{"jsonrpc":"2.0","id":0,"method":"hive.db_head_state","params":{}}' http://[fe80::e147:ba57:f3b1:7208%enp0s31f6]:8888
外部
curl --data '{"jsonrpc":"2.0","id":0,"method":"hive.db_head_state","params":{}}' http://113.144.132.118:8888
curl --data '{"jsonrpc":"2.0","id":0,"method":"hive.db_head_state","params":{}}' http://[240f:54:d80d:1:8186:d9a4:3aaa:f2a1]:8888

image.png

その他のコマンド

IPv6アドレスを設定(グローバルIPv6あり)
sudo ip -6 addr add 2a02:c206:2205:1250::1/64 dev eth0 ・・・追加
sudo ip -6 addr del 2a02:c206:2205:1250::1/64 dev eth0 ・・・削除
ip -6 addr ・・・表示
ip -6 addr show dev eth0 ・・・表示(インタフェースを指定)
デフォルトルート(インターネットへの出口)
sudo ip -6 route add default via fe80::1 dev eth0 ・・・追加
sudo ip -6 route del default via fe80::1 dev eth0 ・・・削除
ip -6 route  ・・・表示
ip -6 route show dev eth0 ・・・表示(インタフェースを指定)
Sort:  

Hello @yasu, your post has been positively voted by @supportive.
Our account is a curation account that aims to reward quality content and supporting the community.
In addition, accounts that delegate to us may receive one daily vote on a post worth approximately 5x their delegated SP, along with nearly 10% APR paid daily.
You can visit our profile page to learn more about us.
Have a nice day.