58 lines
1.5 KiB
Markdown
58 lines
1.5 KiB
Markdown
# etherip-kmod
|
|
|
|
Linuxで使えるEtherIP(RFC3378)のためのカーネルモジュール
|
|
|
|
## 注意
|
|
|
|
Codex GPT-5.5を用いて開発し、途中から人間の手を入れてデバッグ作業を行いました。
|
|
|
|
粗削りなところは否めないため、自己責任でお願いします。
|
|
|
|
## ビルド
|
|
|
|
Arch Linuxの場合
|
|
|
|
```sh
|
|
sudo pacman -S linux-headers
|
|
make
|
|
```
|
|
|
|
## ロード
|
|
|
|
```sh
|
|
sudo insmod etherip6.ko
|
|
```
|
|
|
|
## 別途:クライアントの導入
|
|
|
|
ip-route2が対応していないため、独自のクライアントを導入する必要があります。
|
|
以下のリポからとってビルドしてください。
|
|
https://git.neody.ad.jp/tuna2134/etherip-client
|
|
|
|
## トンネルの作成
|
|
|
|
```sh
|
|
sudo etherip-client add -d eip0 -l 2001:db8::1 -r 2001:db8::2 -L eth0
|
|
sudo ip link set eip0 up
|
|
sudo ip addr add 192.0.2.1/30 dev eip0
|
|
```
|
|
|
|
MTUを省略した場合、Overlay MTUはUnderlayの経路MTUからIPv6、EtherIP、
|
|
Ethernetヘッダーの合計56 byteを差し引いた値に自動調整されます。例えば
|
|
Underlay MTUが1500の場合、Overlay MTUは1444になり、通常の送信では外側IPv6
|
|
フラグメントを生成しません。
|
|
|
|
明示的に大きなMTUを設定することもできます。その場合は、カプセル化後の
|
|
パケットが実際のUnderlay経路MTUを超えたときだけ送信元でIPv6フラグメントを
|
|
生成します。
|
|
|
|
```sh
|
|
sudo ip link set eip0 mtu 1500
|
|
```
|
|
|
|
## トンネルの削除
|
|
|
|
```sh
|
|
sudo etherip-client delete -d eip0
|
|
```
|