このブログははてなブログからの移行記事です。

この記事は

カノジョできないエンジニア Advent Calendar最終日の記事です。ニゲキレナカッタ…

qiita.com

前半ポエムなので技術の話が見たい方は「今日のお話」から読んでどうぞ。

Advent Calendarの参加者の方々、お疲れ様でした

25日間の戦いがようやく終わりを告げようとしています。

チャーハンを作った人、LEDをカノジョとした人、見事カノジョを捕まえ逃走した人。

25日間、涙を禁じ得ない日々を本当にお疲れ様でした。

ちなみに私の死の三日間は

  • 23日 掃除とネットワーク組み
  • 24日 もくもく会
  • 25日 魚を食べる

という大変充実した3日間でした!チクショウ!

このAdvent Calendarに参加する意義

すごく軽い気持ちで参加したカレンダーでしたが、はてブで微妙にバズったり、全然予期しない方向から「最終日wwwwお前かwww頑www張wwれww」みたいな熱いエールを受け取ったりしました。目頭が熱くなっちゃう応援ですね。

そんな感じで少しプレッシャーを感じながら今日まで過ごしてきたわけですが、このアドベントカレンダーに参加する意義をぼんやり考えてました。

ずばり、このカレンダーは傷を舐め合うために書くのではなく「2017年は頑張るぞ!」という自分たちへのエールとして書いてるのではと思っています。

Advent Calendarの記事を見返してみてください。

絶望や嘆きを全面に押し出してる記事は1つもなく、むしろ前向きに技術のネタを更新していくエンジニアたちの記事ばかりだと思います。

これは「俺らはどうせカノジョなんてできないから…」ではなく、「今年はできなかったけど、来年は頑張ろう!」という気持ちの現れなのです。そうに違いありません。異議は認めない。

なので私もそんな心持ちで、どこかにいるであろう待ち人のための技術ネタを書きます。

来年はこのAdvent Calendarの参加者が被らないことを祈りましょう。

今日のお話

ちょっとばかし熱くなってしまいました。ここから本題です。

人肌恋しいクリスマスイブを過ごした私ですが、サンタさんは平等です。

25日起きたら私の枕元にもプレゼントが届いていました。

gyazo.com

カノジョかな?圧縮型かな?と思いワクワクしながら開くとこんなものが。

gyazo.com

1mのLANケーブルが2本、10mのLANケーブルが1本入ってました。

残念ながらカノジョではありませんでしたが、これはもう「ネットワークを組め」というサンタさんからのお告げですね。

ちょうどネットワークスペシャリストに合格してたので私としてもタイムリーなプレゼントです。

せっかくなのでこのLANと先日購入したEdgeRouter Xを使って家で来客用、もといカノジョのためのVLANを組んでみようと思います。

blog.hotolab.net

VLANとは

VLANとはVirtual LANの略です。

本来LAN、つまりLocal Area NetworkはOSI基本参照モデルで言うところのネットワーク層配下を指します。

そしてこのネットワーク層をつかさどるのがルータやL3スイッチです。

gyazo.com

イメージ的にはLANそれぞれの入り口にルータがあるという感じですね。

なのでLANを構築したい場合はルータを足していけばよいのですが、それだと困るケースが存在します。

たとえば、同じ会社で営業部と開発部のPCからつなぐルータを共有したい時があったとしましょう。

その際、安直に両方の部のPCをルータとつないでしまうと、開発部のPCとルータがやり取りしているフレームを営業部がキャプチャ可能な可能性があります。

そうなると業務の内容や情報保護の観点から開発部と営業部のLANは切りたいところですが、そういう場面が出る度にルータを足してネットワーク構成しなおすのは面倒ですし、物理的な制約が出てきた時につらいものがあります。

そんなときに役に立つのがVLANです。

VLANによるブロードキャストドメインの分割

ブロードキャストドメインとは、ブロードキャストパケットを転送する範囲のことです。

ブロードキャストドメインとは|broadcast domain − 意味 / 定義 / 解説 / 説明 : IT用語辞典

このドメインは本来、ルータによって区切られますがVLAN機能を持つルータであれば同じルータにつながったPCを仮想的にブロードキャストドメインで区切ることができます。

VLANの切り方には大きく2つあります。ざっくり説明します。

ポートVLAN

つなぐルートのポートによってVLANを分けます。

設定者は決められたポートにLANケーブルをぶっ刺すだけなので設定は簡単ですが、後でネットワーク構成を変えたい時に若干面倒というデメリットがあります。

タグVLAN

パケットに含まれるMACフレームにVLANを認識するタグを付け足すことで仮想的にVLANを切ります。

ルータは受け取ったパケットのVLANタグを見て、転送すべき端末を判断することでブロードキャストドメインの分割を実現します。

http://www.infraexpert.com/network/vlanz3.gif

出典: http://www.infraexpert.com/study/vlanz1.html

このタグVLANはIEEE 802.1Qで標準化されています。

IEEE 802.1Q - Wikipedia

メリットとしては物理構成にとらわれない柔軟な設定が可能ですが、設定が若干面倒なのとこのフレームの伝送路の機器全てがIEEE 802.1Qに対応している必要があります。

今回使用する方法

今回はEdgeRouter Xを使用するので、ポートVLANを使用して設定します。

設定方法

EdgeRouter Xの初期設定が終わっている前提で話を進めます。

初期設定は以下を参考にするとよいです。

yabe.jp

設定完了後のイメージは以下の通り。

gyazo.com

大人の事情でWANから直接EdgeRouter Xをつなぐことができないので、1つルータを挟んで構築しています。

VLANを設定する

まずはルータの設定画面に入ります。初期設定でルータに固定IPを振っていると思うのでそのIPにアクセスしましょう。

ログインするとDashboardがあるのでまずは下の方のタブからVLANを選択します。

gyazo.com

Add Interfaceをクリックし、VLANを選択しましょう。

今回はeth3, eth4にそれぞれ違うVLAN IDを振ります。

振り終わって設定を見るとこんな感じになってると思います。

gyazo.com

超簡単!

VLANになってるか確かめる

本当にすいません、この作業がまだ完了していなくて26日にまたぎそうなので後ほど追記します…

こういうところがカノジョできない原因ですよね…修行します…

めでたくVLAN設定できてたら

これでカノジョが来た時に「このLANつないでね」と言えばプライベートPCから流れるあんなトラフィックやこんなトラフィックがこっそり盗聴されるなんてことはなくなりました。やったぜ!

え?そんな知識のあるカノジョだったらルータ差し替えられて終わりだって?そんなんはカノジョができてから考えればいいですよチクショウ!

まとめ

来年は頑張って進捗作っていこうな。メリークリスマス!よいお年を!