IPv6 トンネルブローカー設定

提供: ArchWiki
ナビゲーションに移動 検索に移動

関連記事

Hurricane Electric は IPv6 に IPv4 だけしか使えないホストから接続することができる無料の トンネルブローカー サービスを提供しており、Arch でも比較的簡単に使うことができます。

トンネルの登録

特に難しいことはありません。トンネルブローカーサイトにアクセスして登録を済ませるだけです。

Hurricane Electric トンネルの設定

以下の systemd ユニットを作成してください。太字の部分は HE から取得した IP アドレスに置き換えます:

ノート: NAT を通す場合 (大抵のホームルーターではそうなっています)、Client_IPv4_Address には IPv4 のローカルアドレスを指定してください。例: 192.168.0.2
/etc/systemd/system/he-ipv6.service
[Unit]
Description=he.net IPv6 tunnel
After=network.target

[Service]
Type=oneshot
RemainAfterExit=yes
ExecStart=/usr/bin/ip tunnel add he-ipv6 mode sit remote Server_IPv4_Address local Client_IPv4_Address ttl 255
ExecStart=/usr/bin/ip link set he-ipv6 up mtu 1480
ExecStart=/usr/bin/ip addr add Client_IPv6_Address dev he-ipv6
ExecStart=/usr/bin/ip -6 route add ::/0 dev he-ipv6
ExecStop=/usr/bin/ip -6 route del ::/0 dev he-ipv6
ExecStop=/usr/bin/ip link set he-ipv6 down
ExecStop=/usr/bin/ip tunnel del he-ipv6

[Install]
WantedBy=multi-user.target

そして he-ipv6.service を起動・有効化します。

systemd-networkd

systemd-networkd でネットワークの接続を管理している場合、(.service ファイルを使わずに) 一緒にトンネルブローカーの設定も行なってしまうことができます:

/etc/systemd/network/he-tunnel.netdev
[Match]
 
[NetDev]
Name=he-ipv6
Kind=sit
MTUBytes=1480
 
[Tunnel]
Local=<local IPv4>
Remote=<tunnel endpoint>
TTL=255
/etc/systemd/network/he-tunnel.network
[Match]
Name=he-ipv6
 
[Network]
Address=<local IPv6>
Gateway=<IPv6 gateway>
DNS=2001:4860:4860::8888
DNS=2001:4860:4860::8844

そして、デフォルトのインターネット接続に使っている .network ファイルの [Network] セクションに以下の行を追加してください:

Tunnel=he-ipv6

動的 IPv4 IP でトンネリングを使う

定期的にアドレスを更新する cron ジョブを設定するのが、動的な IPv4 IP でトンネリングを使用する最も簡単な方法です。crontab -e を開いて、以下の行を追加してください:

*/10 * * * * wget -O /dev/null https://USERNAME:PASSWORD@ipv4.tunnelbroker.net/ipv4_end.php?tid=TUNNELID >> /dev/null 2>&1

wget によってエラーが吐き出されないことを確認してください。USERNAME, PASSWORD, TUNNELID はあなたのアカウントやトンネルの情報に置き換えて下さい。まずはコマンドを実行してみて問題がでないことを確認しましょう。以下を実行すれば確認できます:

wget https://USERNAME:PASSWORD@ipv4.tunnelbroker.net/ipv4_end.php?tid=TUNNELID