[Event]JANOG41へ行ってきました

ついに行ってきました

休職してから初の一人旅であると同時に、OSC、さくらインターネットさんの勉強会に続き3件目のイベント出席です。

実は昔から知ってて、前々から行きたかったんですがなかなか行き出せず、気づいたらズルズル今に至ってしまって。

休んでるとどうしても会話する相手が家族だけになったり、外的刺激に乏しくなる状況があったため、何かのカンフル剤にならないだろうか?これも一つの良い機会だし・・・・と、カウンセラーさん、病院の先生、そして嫁様に相談しました所、何とかOKを頂くことが出来ました。

会社にも相談してますが、最初は良い顔されなかったんですが、先生の指示もあると話した所、理解を示してくれました。こちらもありがたや。

2泊3日の旅となりまして、交通手段は高速バスを使うことになりました。3日目のバス時刻が18:30発であるため、3日目は最後まで聞くのはちょいと厳しいかなと思いつつ、旅を始めまして、取り敢えずDay1は全部、Day2はBGPチュートリアルまで、Day3は福大NTPの件まで聞いてきた感じです。

JANOG41

JANOG41の会場は広島国際会議場、この回のホスト企業はインターネットイニシアティブ(IIJ)です。参加者は1000人を超える大盛況とのことで、実際に行ってみたらそんな感じでした。広島国際会議場の大きく分けると2つの部屋でセッションが行われてたわけですが、特に1日目の「ネットワーク自動化BoF(Bird of Feature:同好会)]に関しては立ち見が出るほどの大盛況となってました。

本記事では、率直な感想と個人的に刺さったワードについて述べてみようかなと思います。

率直な感想

率直な感想としては、「わー、休職期間中勉強しといてよかったー」です。
恐らく、休職前の状態でJANOG41に出てたら、恐らく登壇者の説明ほとんど理解できませんでした。

サブでやってたネットワークの勉強や、それに連なるSDN、そしてPythonについての理解が多少なりともあったんで、話についていけた感じです。単純にサーバ・ストレージだけの知識しかない状況だと理解はなかなか難しかったかもしれません。

同時に、これまでBGP等動的経路制御や他拠点間ネットワークに手を出してきたわけですが、その中でとんでもない考慮漏れや思い違いが多数あったことも思い知らされたというか、「インターネット」を運用する人の常識というのを|д゚)チラッと垣間見ることが出来ました。

このあたりはDay2でIIJ 松崎さんが行われてた「BGPチュートリアル」なんかや、JANOG Comment(1000番台)をきちんと読めば( ゚д゚)ハッ!とする所がわかるんじゃないかなぁって気がします。その部分は後述します。いやなに、ネットワークやってる人にしてみりゃ「そんなん常識でしょ」系の話だと思います。ワタシの頭が悪いだけっすw

というわけで、個人的にはこのJANOG、「それなりに予備知識が要る」と感じています。何かしら要素があれば、それを中心に回ると話としてはすごく面白いので、楽しめるんじゃないかなーと思います。

もう一点としては「やっぱし個人で行くのは結構ツライ」でした。だって登録時個人アドレスしか登録のしようがないし、会社名刺も持ってないし。それで会社名ぶら下げるのには抵抗あったし・・

特に展示ブースで絡みようがなく、結構孤立しました。仕事復帰してから行くと、そっち方面はもう少し面白おかしく周れたかもしれません。(個人と言っても、学生さんの場合は「大学名」と言う肩書きがきちんとあるから、そういう意味だと大丈夫ですよ。ワタシはそれすらなかったからねー)

何ていうか、雰囲気的にはビジネス展示会と勉強会の中間帯にあたるんですね。なので、ビジネスの側面・OSCっぽい側面の両方がそこには有りました。なんだか不思議な空間だよなーと感じたのもこれまた事実です。

刺さったキーワード

セッションのレポートが全部書ければいいんですが、体力的にどうみても無理ゲーなので、とりあえず自分の中で面白いなとか興味あるなとか感じたところを列挙します。

中国のインターネット事情

該当する発表は以下のとおりです。

中国のインターネットの特徴と、そのうまい活用法に関する話や、グレート・ファイアウォールの内側のクラウドを日本人が個人として使うにはどうしたらよいかという話が出ていました。

中国のグレート・ファイアウォールの内側は、我々が当たり前だと思ってる世界と異なる世界がどうも形成されてるようで、Baidu/Alibaba/Tencent(略してBAT)を中心としたサービスを主体に構成されてるようです。Paypal/クレカ通用しないらしいっすよ?

ネットワーク管理/設定/テストの自動化

サーバはおおよそ自動化の目処が付いた、次はネットワークだ!と言うフェーズに入ってるようで、ネットワーク運用管理・テストの自動化と言うところをターゲットにした話が盛り上がっていました。
何の偶然か、私はSDNコントローラとしてRyuを知り、そこからPythonを学ぼうと思ったクチなんですが、この界隈でもPythonが人気でした。型宣言とかなしに自動的に型の当てはめをしてくれる所や、インタプリタで実行しやすいと言うところが好まれる要因ですかね。

Literate Computing for Reproducible Infrastructure(LC4RI)

ネットワーク自動化BoFの中でNII(国立情報学研究所)の長久さんの発表で紹介された、「Jupyter Notebookとそれに対する拡張機能」に興味をいだきました。多分JANOG41で一番心に突き刺さったのはこいつじゃないかなぁ・・・ってぐらい。

該当するプログラムは以下のとおりです。

Jupyter NotebookはPython UIとノート機能を合体させて、手軽なUI統合環境を構成するソフトウェアで、NIIさんでは、このJupyter Notebookに機能拡張を行い、現場構築・テスト作業に使えるようにされたとのこと。

さらにこれを使うことで後進育成や同様作業の効率化も果たしているとのこと。

実際の作業を後進に伝える際のアプローチとしては非常に斬新だなーと感じていて、でもその思想自体は私らがいつもやってる「過去の設計書やパラメータシートをベースに指導する」のと同じ。

GUI手順をこれを用いてどうのこうのはちょっと難しいかもしれないけど、CLIで対応する部分ならある程度有用なやり方なのかもしれません。どういう実行モデルが最適なのかはこれから試行錯誤が必要かなと思います。

なので、まずは触ってみようかなーと現在環境構築中です。一先ず土台のJupyter Notebook本体はインストールしたので、これの基礎操作を覚えた上で、NIIさんの拡張機能を入れていこうかなと思います。あ、ちなみにNIIさんが開発・使用されてる拡張機能はオープンソースソフトウェア(BSDライセンスかな?)として公開されています(https://github.com/NII-cloud-operation)。

Ansible

Ansible、よく使われてるんだなぁと実感しました。ネットワーク自動化ネタの中で、Pythonと同じぐらいAnsibleが登場していたと思います。私もAnsible、インストールしたぐらいでPlaybookの概念がまだよく理解できておらず、ほぼ全くわかりません。

ただ、サーバもネットワークも構成管理にこれ使ったら相当効果が上がるんだろうなーと感じており、何れは避けて通れんなとも思っています。

BGPの基礎というか、ネットワークの考え方

該当する発表は先述したとおり、「BGPチュートリアル」でした。実は発表資料の中を松崎さんはかいつまんで説明されてたのですが、発表資料自体は「IPとは」からスタートしていて、100ページ軽く超えた資料になっているので、まずはネットワークの教科書的な位置づけで読んでみることをお勧めします。

この中でも特に突き刺さったキーワードが

  • 広告経路はaggregateしろ
  • ルーティングループを起こすな

の2点でした。なんで突き刺さったかって、それまでは「経路は細かく広告するものだ」と思ってたからです。そうしないと、使われてないサブネットにアクセスが行くとルーティングループ起こすじゃ~ん・・

でも、細かく大量の経路を送ることは、周囲のルーターのメモリリソースを余計に消費することになり、しかもインターネットのASで・・・となるとその影響って確かに・・・相当でかい。

また、あまり意識できてなかったのが、ルーティングループはループする回数分パケットが往復すること。それに依る消費帯域はループする回数分倍増すること。これ、LAN内においても同じことが言えるよなぁとか。

で、やっと理解できたのが「blackhole」「Null」「unreachable」ルートと「ロンゲストマッチが優先されるルーティング自体の特性」です。CiscoだとNullルートだし、Routerboardだとunreachableルートですね。Sophosとかでblackholeってのを見たような気がするなぁ・・

そうやん、割り当てられた丸ごとのサブネットをblackholeルートにすれば、定義したサブネットはロンゲストマッチで優先配送されるし、未定義のサブネットはブラックホールに吸い込まれてルーティングループせんやん・・・・私はそんなこともわからなかったわけで_| ̄|○ il||li

帰りの旅路の中で、取り敢えずIHAnetの経路についてはaggregateするように修正をしましたし、Homenoc/TunnelBroker/IHAnet境界ルーターにはnullルートを入れました。おかげさまで帰り道は疲れを感じることなく帰ることが出来ました。こうやって、他の方の話を聞き、「アーッ!」と気づいて、修正して覚えていく、学びって大事ですね。

福大NTPの件

まず、「このNTPサーバを止める」ことは決まってるそうです。
2018/4頃から実証実験等進めていき、近い将来このサーバを止めることになりそうです。

この話題は面白かったです。私自身インターネット始めた頃に外部公開NTPといえば「福岡大学」と言われてたぐらい。日本初公開NTPサーバである福岡大学NTPサーバは、1993年生まれの御年24~5歳。

NTPはUDPだから投げた後は知らんぷり。加えてショートパケット。負荷分散やサーバ自体のOS実装の難易度が挙がる。NTPは同期失敗したらより短い間隔で時刻同期を試みようとするから、サーバを止めるとリクエスト量が激増して上流ネットワークが死ぬ。

色々ジレンマを抱えながら動かしていたものの、どうやらもう限界っぽいです。
もともとは当時、NTPそのものが研究対象になっていて、そのために立てたサーバであり、そこにかけるコストはそもそも無いということだそうなので。

日本国内では2005年に一度ドタバタが有り、その甲斐もあって日本での利用は非推奨扱いされ、アクセスランキングでもなんと日本は14位なんだそうです。(1位は中国、2位はブラジル、3位はドイツ・・・だそうで。特に中国・ブラジルで半分近くを占めるみたいです)

ただ、最近、「インターネットの到達性を確認するため」に使われてるそうで、先日発生した某中国企業によるファームウェア設定埋め込み問題とかが結果としてとどめを刺す感じになってるようです。

まさか、NTPを研究するために立てたサーバが、インターネット到達性確認をするために使われてるなんて、そりゃぁサーバ立てた当時には想定するなんて無理だったんでしょうね・・・。

福岡大学の藤村さんは「福大NTPは『止めます』。これをどんどん発信してください」とのことでしたので、どんどん発信すれば良いんだろうなぁと思います。

藤村さんが序盤におっしゃってた以下の点は我々も気をつけていかねばならないのでしょう。どうしてもサービス開始時ってベンダー側も「イケイケドンドン、終わる時はその時考えればいいやー」ってなりますよね。でも、初期の利益がサービスクローズ時に蒸発したら本末転倒ですよね・・

  • そのサービス、ちゃんと終了できますか?
  • サービスのライフサイクル、考えてますか?
  • そのサービス、ユーザは想定した使い方をしてますか?
  • サービスの需要・トラフィック予測してますか?
  • そのサービスのやめ方は確立していますか?

あと、ユーザも「それがいつまでもあると思うなよ」って意識を持つことが必要なんだと思います。

おわりに

まず、この機会にただひたすら感謝の念でいっぱいです。ありがとうございました。

また、いろいろな人との出会いがありました。同時に自分が引っ込み思案だったせいで「もったいないな」ということも多々有りました。このあたり、永遠の課題と言うか、継続して取り組む課題だなーとも感じています。

JANOG41退散し、高速バスで帰り、帰宅後、嫁様に湿布を貼ってもらったんですが、背中中ガッチガチに固まっていたそうです。この期間中、久々の刺激にだいぶ緊張してたので、それがあるかもしれません。ただ、今までストレスを感じてるとお腹を壊すことが多かったのですが、それがまったくなかったのは本当に良かったと思います。

また、「このぐらいに留めとこう」とか一定の線引が出来たことで、実は体調を崩したりもあったんですが、そのときには既に宿についていて、ベッドの上でリラックスしてりゃいいじゃんって状況だったりしたので、対処が非常に楽でした。このあたりのセンサーはだいぶ回復してきたのかなーと感じます。

もうしばらく療養する感じになるんですが、やっぱり働きたいっす。コツコツ勉強しながら、復帰に向けた調整を引き続き行っていこうと思います。

またこれで得た知識を自宅環境にフィードバックした形跡は、引き続きこのブログに書いていこうと思いますのでよろしくおねがいしまーす。