こんばんわ
RouterBoard CCR1016-12S-1S+を買った理由の一つだった
IPv6-VPNの設定をしてみました。
なかでもL2がやりたかったので、
EoIPv6 over ipsecを設定してみます。
Local IPv6
2001:db8:cafe:beef:aaaa:aaaa:aaaa:aaaa
Remote IPv6
2001:db8:cafe:beef:aaaa:bbbb:bbbb:bbbb
ipsecパスワード
hogehoge-secret
tunnel ID
1234
ローカルルータ
model: CCR1016-12S-1S+ serial-number: firmware-type: tilegx factory-firmware: 3.33 current-firmware: 6.41.2 upgrade-firmware: 6.41.2
(リモートはRouterBoard CCR1036です)
WAN越しにやっています。
さくっと設定してみます。
ローカル側
[admin@MikroTik] > /interface eoipv6 print Flags: X - disabled, R - running 0 R name="eoipv6-test“ mtu=auto actual-mtu=1398 l2mtu=65535 mac-address=02:64:24:**:**:** arp=enabled arp-timeout=auto loop-protect=off loop-protect-status=off loop-protect-send-interval=0s loop-protect-disable-time=0s local-address=2001:db8:cafe:beef:aaaa:aaaa:aaaa:aaaa remote-address=2001:db8:cafe:beef:aaaa:bbbb:bbbb:bbbb tunnel-id=1234 dscp=inherit clamp-tcp-mss=yes ipsec-secret="hogehoge-secret”
とくに難しいことはないかと思います。
IPアドレスの設定
[[admin@MikroTik] > /ip address export /ip address add address=10.39.41.2/30 interface=eoipv6 network=10.39.41.0
リモート側も同じように。。。
フィルタを追加
[[admin@MikroTik] > /ip firewall filter print chain=input action=accept in-interface=eoipv6 log=no log-prefix=“”
リモート側も同じように。。。
帯域テスト
UDP
MTU1410で行います
送信
[admin@MikroTik] > /tool bandwidth-test remote-udp-tx-size=1410 local-udp-tx-size=1410 direction=transmit protocol=udp address: 10.39.41.1 status: running duration: 20s tx-current: 173.3Mbps tx-10-second-average: 174.8Mbps tx-total-average: 120.6Mbps random-data: no direction: transmit tx-size: 1410 [admin@MikroTik] > /system resource monitor interval=1 cpu-used: 6% cpu-used-per-cpu: 0%,0%,0%,100%,3%,0%,0%,0%,0%,0%,0%,6%,0%,0%,0%,0% free-memory: 1648768KiB
1つのCPUが100%になるのは、Linuxの仕様?らしくきちんと負荷分散してくれません。
これがきちんと分散したらもう少し出るのかもしれません。
受信
[admin@MikroTik] > /tool bandwidth-test remote-udp-tx-size=1410 local-udp-tx-size=1410 direction=receive protocol=udp address: 10.39.41.1 status: running duration: 16s rx-current: 183.1Mbps rx-10-second-average: 146.9Mbps rx-total-average: 103.9Mbps lost-packets: 298 random-data: no direction: receive rx-size: 1410 [admin@MikroTik] > /system resource monitor interval=1 cpu-used: 8% cpu-used-per-cpu: 8%,7%,11%,7%,11%,8%,8%,8%,10%,9%,10%,13%,7%,7%,6%,7% free-memory: 1681920KiB
受信はきちんと負荷分散してくれます。
が、送信側はCPUが100%になってしまいます。
送受信
[admin@MikroTik] > /tool bandwidth-test remote-udp-tx-size=1410 local-udp-tx-size=1410 direction=both protocol=udp address: 10.39.41.1 status: running duration: 24s tx-current: 143.2Mbps tx-10-second-average: 157.8Mbps tx-total-average: 116.8Mbps rx-current: 124.1Mbps rx-10-second-average: 131.9Mbps rx-total-average: 101.3Mbps lost-packets: 2588 random-data: no direction: both tx-size: 1410 rx-size: 1410 [admin@MikroTik] > /system resource monitor interval=1 cpu-used: 14% cpu-used-per-cpu: 9%,6%,9%,100%,6%,9%,7%,8%,12%,10%,11%,11%,6%,9%,8%,10% free-memory: 1637248KiB
やはり100%で張り付くCPUがいます。
CPU見てみる
[admin@MikroTik] > /system resource irq print detail Flags: ro - read-only 0 irq=1 users=MicroSD cpu=auto active-cpu=0 1 irq=2 users=TILEGx_Serial cpu=auto active-cpu=1 2 irq=3 users=ts cpu=auto active-cpu=2 3 irq=4 users=crypto cpu=auto active-cpu=3 4 irq=5 users=Fancon cpu=auto active-cpu=4 5 irq=6 users=eth phy cpu=auto active-cpu=5 6 irq=7 users=eth cpu=auto active-cpu=6 7 irq=8 users=eth cpu=auto active-cpu=7 8 irq=9 users=usb1 cpu=auto active-cpu=8 9 irq=10 users=usb2 cpu=auto active-cpu=9
張り付くのは「crypto」のようです。
IPSECの暗号化というよりは、
送信での負荷分散がきちんとできていないのが問題な気もします。