EdgeRouter

EdgerRouter v1.9.7にするとTCP Dup ACKが発生して、ネットワークが不安定になる

Edge Router ER-8 を使っているのですが 最新のファームウェア v1.9.7(hotfix-2)を使うと外部からアクセスするのに 40秒近くかかるようになったので共有として。 EdgeRouter ER-8を買ってセットアップしてみた   症状 EdgeRouter v1.9.7, v1.9.7-hotfix1, v1.9.7-hotfix2 いずれのファームウェアにアップデートをすると ネットワークが不安定になるようになった。 TTFBが35秒程かかり、ロードが終わるのに40秒かかる現象になってしまった。 ※TTFB – Time to First Byte クライアントがHTTPリクエストを送信してからサーバーが返してクライアントが最初の1byteを取得するまでの時間 EdgeRouter <-> ロードバランサー <-> Webサーバー 上記構成で、ロードバランサーでパケットキャプチャをしてみた。   TCP Dup ACK が発生したのち、TCP Retransmission が頻発してます。   TCP Dup ACK とは パケットロス等で、受信者が想定しているシーケンス番号より、大きな値のシーケンス番号が送信者から送られてくることがあります。 すると、受信者は自分が想定しているシーケンス番号をACK番号にセットしたACKを直ちに送信者に送ります。これがDupACKです。 http://troushoo.blog.fc2.com/blog-entry-111.html 今回の場合はサーバーが効率目的で一方的にパケットいくつかを送った結果、パケットロス等が原因で届かなかったためか、クライアントはACK=1を期待してパケットを投げます。 しかし投げたパケットも届かなかったためか、もう1度ACK=1を期待してパケットを投げる。 これが重複したACK = DUP(licate) Ack(nowledgement)です。   TCP Retransmission とは Seq#が進んでおらず、TCP Fast Retransmission, TCP Out-Of-Order, TCP Spurious Retransmission の いずれにも該当しないパケット http://milestone-of-se.nesuke.com/knowhow/wireshark-tcp-error/ 今回の場合は、TCP Dup ACKを受け取ったサーバーが 再送のためTCP Retransmissionなパケットをクライアントに送ります。 しかし再送しまくってる(Seq=1)のにも関わらず、クライアントから返送がないため 9回も同じパケットをサーバーからクライアントに送信してます。(最後の9回目だけサイズが小さい) No.144 で初めてクライアントから サーバーが送った Seq=1 + LEN=1452 を受け取ったよパケットが届きました。 その他のTCP Retransmissionなパケットも、No.147, 149で届いてることが確認できました。     EdgeRouter v1.9.1.1 では ああ…綺麗だ。 直接的には原因は分からない(v1.9.1.1 と v1.9.7の差分が多すぎて辛い)。 時間があるときに見ていきたいと思います。 もし記事にミス等がありましたらコメントしてくださると助かります。

EdgeRouter ER-8のファンを交換してみた

分解のいよいよ夏だなとそんな気温が続きますね。 サーバーの冷却は大丈夫でしょうか? 前回、EdgeRouter ER-8 を購入したのですがデフォルトのファンが そこそこうるさい(C3750E程じゃない)のでファンを交換してみました。 EdgeRouter ER-8を買ってセットアップしてみた   換装するファン Canon IXY 430F (4.3mm, f/2.7, 1/30 sec, ISO320) 「ワイドワーク 40mm角DCファン  超静音タイプ 回転数3000rpm 4020LL12S/A」 です。Amazonで1個 1,473円でした。   ファンを交換する Canon IXY 430F (4.3mm, f/2.7, 1/30 sec, ISO500) 分解はネジを外すだけなので簡単でした。   Canon IXY 430F (4.3mm, f/2.7, 1/20 sec, ISO1000) メモリにも簡単にアクセスできました。 DDR3だかDDR2の2GB メモリです。 CPUが64bitで、EdgeOSも64bitなのでもしかしたら4GBで動くかも? 使う機会はないと思いますが。   Canon IXY 430F (4.3mm, f/2.7, 1/25 sec, ISO800) ファンコネクタは3pinなのでご注意ください〜 3pinなので上で紹介したファンを購入しました。   Canon IXY 430F (4.3mm, f/2.7, 1/30 sec, ISO640) デフォルトで乗ってるファン   Canon IXY 430F (4.3mm, f/2.7, 1/30 sec, ISO500) 交換した めちゃくちゃ静かになって風量もめっちゃ少なくなりました!

EdgeRouter ER-8の温度をZabbixで取得する

前回の記事を書いた後、ZabbixでEdgeRouter ER-8の温度を取得することができたので 記事にしたいと思います。 EdgeRouter ER-8を買ってセットアップしてみた   EdgeRouter ER-8 にSSHできるようにする Webでログインしたら、フッターっぽいところに system タブがあるので そこを開いてSSHを有効化します。 ちなみにこの時点でWAN側のポートが開くので要注意です。   ホームディレクトリにスクリプトを設置する これに実行権限を与える chmod +x get_temperature.sh   Zabbix server で zabbixユーザーがSSHできるようにする 僕の環境では zabbix ユーザーは /bin/false な状態だったのでいくつかコマンドを実行 [crayon-5b04572607cbe247722708/]   また、一度known_hostsに EdgeRouter を追加するためにzabbixユーザーでSSH [crayon-5b04572607cce676569938/]     Zabbix server の外部スクリプトとしてスクリプトを設置する [crayon-5b04572607cd0486548450/] これをZabbixのexternalscriptsフォルダの中に入れる zabbixで実行できるようにしておく [crayon-5b04572607cd2332312712/] zabbix server の再起動 # systemctl restart zabbix-server   Zabbix にアイテムを追加する こんな感じに追加する。 引数の部分はCPU以外にもBoardCPUととPHY、BoardPHYが取得できます。   確認する EdgeRouterのCPU温度をZabbixで取得できたぞーーー pic.twitter.com/ES5KLXss4X — らりるれるいすにゃん (@lu_iskun) 2017年5月11日

EdgeRouter ER-8を買ってセットアップしてみた

一週間家を出ずに外を出ると体調が優れなくなるので できるだけ昼間は外に出ることが重要なんだなと思います。   EdgeRouter ER-8 とは Ubiquiti Networks 社の製品 EdgeMax シリーズの有線ルーター EdgeRouter シリーズの1つです。 OSには Vyattaベースの EdgeOS というのが載っています。 コマンドもそのまま使えるので分からないこともWeb上で調べれば大体解決できます。 いくつか製品があってグレードがある中で ER-8 は 最上位の ERPro-8 の1個下のグレードです。 ここの Wiki を1回目を通すと良いです。 今回は Amazon.com で購入しました。 送料込みで38,000円でした。   内容物 Canon IXY 430F (4.3mm, f/2.7, 1/30 sec, ISO250) 至ってシンプルで本体とルーターのみです。   外観 Canon IXY 430F (4.3mm, f/2.7, 1/30 sec, ISO200) 全面もシンプルです SFPは搭載しておらず、eth0 – eth7 はGigabitEtherです。   Canon IXY 430F (4.3mm, f/2.7, 1/30 sec, ISO160) 背面はファンが2つ、ミッキー型の電源があるのみ。 どこもかしこもシンプルです。   設置 Canon IXY 430F (4.3mm, f/2.7, 1/25 sec, ISO800) 今回は eth0 を PPPoE として eth3 と eth6 のみを使うように。 真ん中にあるスイッチはヒートシンク的な役割。     設定 基本的な設定はWeb上で行えます。 設定はWeb上だけでなく、シリアルコンソール、SSHでも可能です。 今回届いたルーターのファームウェアが古かったので最新のものを当てました。   PPPoE   ファイアウォール 結構事細かく設定できると思います。 設定したポリシーが有効な時間とかまで設定できちゃいます。 すごいね!   ポートフォワーディング ポート開放の部分 ヘアピンNATにも対応してます。   その他の機能 VLAN / OSPF / RIP / SNAT / DNAT / DHCP Server /…