この記事はCPS Lab Advent Calender 2021の24日目の記事です。
岩井研でインフラやっている@NOGU626です。
最近は内定先の某企業にてインフラ部でDNS更新や社内NWの再構築。AWS上のサービスの保守等をインターン生としてやっています。
今回は学部時代から現在の修士に至るまでに経験したインフラに関する話をしていきたいと思います。
はじめに
2020年度に至るまで岩研では、下の図のようなNW構成とRAIDが強強のストレージのサーバ構成で、岩井教授の前身である。戸部先生(岩井先生の恩師であり前任の教授)の研究室にリソースを引き継いで約10年程運用をしてきました.
NW構成としては学科サーバ室と言われる情報メディア学科が管理する(教授のみしか入れない割には大したものがない名前だけが素晴らしい部屋)ものがあり、学科スイッチと呼ばれるフロアスイッチから弊研究室のラックにあるRTX1200へLANケーブルが2本引かれておりそれぞれLANとWANと区別され(異なるセグメントとして)接続されています。またRTX1200のLAN側のインターフェイスにはサーバ機器が接続されいます。
問題はここから(悪夢の始まり)
岩井研でのインフラを確立しようとCisco機器や1/4Uサイズのサーバ等などを岩井研究室の既存インフラと同居させることをこころみました.その時の機材が以下のもの。
当時は何も知らなかったのでウキウキで秋葉へLet's Goして買ってきたCatalyst4948君(ファームウェアが古く)Spaning port-fastが使えないので今は引退。
研究用途でVmware Exsi7が使いたかったというのもありNOGUプロジェクトとして稼働していたもの現在は旧岩井研サーバが現行のVmware Exsiに追いつけないため、NOGUプロジェクトから岩井研基幹となるDNSサーバやプロキシサーバを動かすためにサーバルームで24時間稼働中。
そして追加したインフラが以下のような構成。
今後グローバルIPを持たせた機器を追加すると考えVLANを使う設計にしました。
この構成を考えた当初はまだインフラの知識が浅くいろいろわからないことが多く。サーバールームに実際に岩研の基幹ルータ(RTX1200)とは別に、Ciscoのルータなどを設置して検証を行なっていた時期などがありました。
この増設をし始めたタイミングで研究室や岩井先生の口から最近トラフィックが落ちてない?とか言われ始めるようになりました。
そしてこの日を迎えることに・・・・
夏休みのある日岩井先生からなんか研究室のLANが死んでるから見てくれないと連絡があり。サーバルームへ見にくとスイッチが全点灯しているじゃないですか。そうです世間体で言う。
なぜこれが起きたのか?この時機械学習マシーンと言われるものと、岩井先生の大量に買ってきたNetGearスイッチ(8ポートのアンマネージメント)と自分が構築したインフラ用の余ったLANケーブルをそのまま野郎状態でラック内に放置(インフラ用に黄色を購入当時の岩研では黄色のLANケーブルはありませんでした)
おそらく悪気はないのでしょう。自分の設置したCatalyst4948から黄色LANケーブルがNetagearへ刺さっておりそれからさらにRTX1200へ接続されたいたわけです。
ちなみにこの時の自分はCisco機器にしか興味がなくサーバルームで使う機材はYAMAHAかCiscoしか使わないという自分なりのルールがあり。原因特定が早かった。
ここまではよくあるある話であり自分のスイッチのポートをシャットダウンしなかったというインフラとしては爪の甘い保守だったという理解で終わりました。
本当の悪夢の始まり
あの一件から岩井研も学長が変わり研究室の移動に伴い新たなインフラ構築が始まりました。
Catalist4948の古さから別のスイッチの交換やインフラ設備の増強等を繰り返してきましたが、あのインフラのためのインフラを構築した時から全く状況が変わっていないのです。特にトラフィックなんなら計測した時バーストしてね?となり本格的にNWの調査に乗り出しました。
まず疑ったのはRTX1200(岩井研の基幹ルータ)。一本ずつトラフィックを見るためにLANケーブルを抜いていきました。基本ルータの役目としてNAT変換と言われるグローバルIPからローカルIPを変換するための仕事を行います。YAMAHA場合LAN2がWANとしてLAN1がLANとして機能しています。
調査としてLAN2側に自身のPCを接続し、LAN1のケーブルを抜くとNAT変換される先のものが見えず通信が行えないためインターネットへ出れません。ここまでは想定通り。
LAN1のインターフェイスに刺さっている学科スイッチ(岩研のLANとして学科スイッチに出ているもの)のLANを抜くとお見事各部屋にいってるであろうLANの通信が遮断されました。ここまでは想定通り。
ここでちょい調べ物をと思い学内のWifiに接続。この時再度検証しようと思っていたのかYAMAHAのLAN2(WAN)のインターフェイスに刺さっているLANケーブルを抜いていました。
YAMAHAの場合NAT変換とは別にWANインターフフェイスのIPマスク内に含まれるものであればルータの配下に設置されたグローバルIPのサーバの通信はNAT変換せずにLAN1からLAN2へ転送されインターネットへ出るというものがあります。(通常の動作)
ただ今回の場合LAN2は抜かれておりLAN1にはグローバルIPが振られたVMインスタンスがつながったVMwareサーバと学科からLANとして伸びている2つのみしか刺さっていないわけです。本来なら出入り口はがないためインターネットへ出れないはず。
ふと何を思ったのか岩井研のcps.im.dendai.ac.jpへ自分のPCでアクセス・・・あれ?LAN2のインターフェースに何も刺さっていないないはずなのに岩井研のサーバにアクセスできてしまった。しかも研究室内の回線ではないWAN側から!!!!!
なんならサーバからのトラフィックなんてルーティングもNATもしてないもはやRTX1200のLAN1(LAN側)を学科スイッチとのLANハブとしての機能でしか使っていないという新事実。
図でいうなら以下のような通信。