再びパケットの実験
以前、Raspberry Pi 3 でパケット遅延器を作る(有線-無線ブリッジ) にてパケット遅延器を作成しました。
再び必要になったので再構築します。今回は有線-有線ブリッジです。新規でraspiを購入しても良かったのですが、使ってないRasPadのraspiを使うことにしました。
必要なもの
売り上げランキング: 207,265
売り上げランキング: 3,930
売り上げランキング: 1
売り上げランキング: 2,015
セットアップ
raspiの基本的なセットアップは検索してもらえば出てくるので割愛。
無線(wlan0)をIP固定
今回は全てリモートで作業を行います。「有線」はブリッジ接続として使うのでSSHやVNC接続が出来なくなります。そこで「無線」でアクセスして設定を行うことにします。毎回IPアドレスが変化すると手間なので固定化します。
$ sudo nano /etc/dhcpcd.conf
# 無線のIPを固定(追記)
# XXXは任意の値
interface wlan0
static ip_address=XXX.XXX.XXX.XXX
設定を反映させます。
$ reboot
有線(eth0とeth1)をブリッジ接続
有線LANアダプターをUSBポートに挿します。今回は本体有線LAN(eth0)側がパケット遅延させたい機器、USBポートに繋いだ有線LANアダプター(eth1)側をインターネットにそれぞれ繋ぎます。
次にブリッジユーティリティをインストールしてブリッジ接続を行います。
$ sudo apt install bridge-utils
$ sudo brctl addbr br0
$ sudo brctl addif br0 eth0
$ sudo brctl addif br0 eth1
この状態で一度eth0側の機器からインターネット側に接続できるかテストします。問題なければ次へ。
パケット遅延
eth0に100msの遅延を設定
$ sudo tc qdisc add dev eth0 root netem delay 100ms
帯域制限(下り)
eth0の1Mbitに制限する場合
$ sudo tc qdisc add dev eth0 root tbf rate 1mbit latency 50ms burst 1500
帯域制限(上り)
eth1側に設定すれば出来るのかな?と思ったけど、うまく設定出来なかったので保留。今回の用途では使用しないので一応問題なし。
設定のリセット
eth0のリセット
$ sudo tc qdisc del dev eth0 root
eth1のリセット
$ sudo tc qdisc del dev eth1 root
まとめ
さすがに2回目の構築なので簡単に実装出来ました。