Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/bin/bash
- # https://www.iij.ad.jp/dev/tech/techweek/pdf/141128_0.pdf を参考にした
- # ubuntu用
- # apt-get install firewalld されている前提
- # DS-Liteでつなぐ
- modprobe ip6_tunnel
- ip -6 tunnel add ip6tnl1 mode ip4ip6 remote 2404:8e00::feed:100 local dead:beef:feed:100:dead:beef:feed:200 dev eth0
- ip link set dev ip6tnl1 up
- # IP Forwardを有効にする
- sysctl net.ipv4.ip_forward=1
- # ちからわざルーティング
- # 192.168.0.1はこのトンネル用マシン。含めてルーティングしてしまうとパケットがトンネルに流れてしまい、sshもつながらなくなる。
- # ちゃんと設定するなら、priorityを工夫してルーティングしてやるとよいのかもしれない。
- for ((ipcount=2; ipcount < 255; ipcount++)); do
- ip rule add from 192.168.0.$ipcount table 10001 priority 32765
- done
- ip route add table 10001 dev ip6tnl1
- ip route add default dev ip6tnl1 metric 10001
- ip route flush cache
- # ファイアウォールをてきとうに設定する
- firewall-cmd --permanent --zone=internal --add-masquerade
- firewall-cmd --permanent --direct --add-rule ipv4 nat POSTROUTING 0 -o ip6tnl1 -j MASQUERADE
- firewall-cmd --permanent --direct --add-rule ipv4 filter FORWARD 0 -i p1p1 -o ip6tnl1 -j ACCEPT
- firewall-cmd --permanent --direct --add-rule ipv4 filter FORWARD 0 -i ip6tnl1 -o p1p1 -m state --state RELATED,ESTABLISHED -j ACCEPT
- firewall-cmd --reload
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement