20cf4124c826de64a98481117d97fcaa6e16cc49
etherip-kmod
Linuxで使えるEtherIP(RFC3378)のためのカーネルモジュール
注意
Codex GPT-5.5を用いて開発し、途中から人間の手を入れてデバッグ作業を行いました。
粗削りなところは否めないため、自己責任でお願いします。
ビルド
Arch Linuxの場合
sudo pacman -S linux-headers
make
ロード
sudo insmod etherip6.ko
別途:クライアントの導入
ip-route2が対応していないため、独自のクライアントを導入する必要があります。 以下のリポからとってビルドしてください。 https://git.neody.ad.jp/tuna2134/etherip-client
トンネルの作成
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フラグメントを 生成します。
sudo ip link set eip0 mtu 1500
トンネルの削除
sudo etherip-client delete -d eip0
Description
Languages
C
95.5%
Shell
2.3%
Makefile
2.2%