IHANet Home‎ > ‎samples‎ > ‎

EtherIP

EtherIP

  • RFC3378
  • NECのIXルータ系に実装あり
  • Linuxでの実装もあり
  • FreeBSD
  • NetBSD
  • OpenBSD

IX2015での設定方法

NECのIXルータ系での設定方法。tunnel interfaceを作ったら、tunnel interfaceと物理interfaceをbridgeする。

#Bridgeを有効化
bridge irb enable

#tunnel interfaceの設定
interface Tunnel0.0
  description 宛先メモ
  tunnel mode ether-ip [ip or ipv6]    //配送プロトコルを指定
  tunnel destination 対向アドレス
  tunnel source 送信元インターフェース
  no ip address
  bridge-group 1                          //bridgeグループを指定
  no shutdown

#物理インターフェースの設定
#ここではFastEthernet0/1.0とbridgeする
interface FastEthernet0/1.0
  no ip address
  bridge-group 1
  no shutdown


Linux(Gentoo Linux)での設定方法
vanilla-kernel に EtherIP のモジュールは含まれていないため、ここからソースを持ってきてコンパイルする必要があります。(あまりよろしくない方法で対応させてますが、EtherIP対応版iproute2

# コンパイル方法
$ git clone git://github.com/kjmkznr/etherip.git
$ cd etherip
$ make

# 使い方
$ sudo insmod etherip.ko
$ sudo ./ethiptunnel -a -d <対向アドレス> -n <EtherIPのインターフェイス名>
$ sudo ip link set <EtherIPのインターフェイス名> mtu <MTU> up
$ sudo ip -6 addr add <Link-localアドレス> dev <EtherIPのインターフェイス名>

# 確認がとれている環境
  • GentooLinux: gentoo-sources-2.6.29-r5
  • GentooLinux: gentoo-sources-2.6.30
  • CentOS 5.4
# コンパイルできない環境
  • GentooLinux: gentoo-sources-2.6.29-r2

FreeBSD 7.2-RELEASE+パッチ もしくはFreeBSD 8-BETAでの設定方法
FreeBSD 7.2-RELEASEでは、http://home.mahoroba.org/tmp/etherip-versfix.diff のパッチが必要です。
FreeBSD 8系では、特に必要ありません。

# gifトンネルの設定
・/sbin/ifconfig gifN create
・/sbin/ifconfig gifN tunnel <自分のIPV4ADDRESS> <相手のIPV4ADDRES> mtu <MTU>
(MTUは、MTU早見表から求めてください)

# bridgeの設定
・/sbin/ifconfig bridgeM create
・/sbin/ifconfig bridgeM addm gifN
・/sbin/ifconfig bridgeM inet6 <IHANet-L2IX用のIPv6アドレス>
(FreeBSDのif_bridgeは、最初に設定したI/FのMTUで運用されるので注意が必要です)。

# ping6で通信確認
・/sbin/ping6 <IHANET-L2IX用の他の人のIPV6アドレス>%bridgeM
で通ればOK。

# あとは、通常の設定と同じように/etc/rc.conf を書いたり、BGPの設定をしてください。


接続試験が出来ている相手
  • Linux EtherIP
  • IX2015
  • FreeBSD 7.2-STABLE + EtherIP Version Fixパッチ
  • FreeBSD 8,9