chouett0's note

掃きだめ的なsomething

VyOS

# 宣伝
harekaze.com


# 初めに
Harekaze Advent calendar 14日目の記事となります。
adventar.org


本来は技術的な記事にしたかったのですが、進捗が思ったように出なかったので
今回はVyOSにて家庭内ネットワークを再構築しようとした際に気づいたことのまとめを書いていこうと思います。

# VyOSについて
VyOSとは、Vyattaと呼ばれるLinuxベースのネットワークOSの無償版であるVyatta CoreというものからフォークされたOSです。
UNIXLinuxに近いと考えるとわかりやすいかもしれません(実際は全然違いますが)
このVyOSですが、実機にインストールできるだけでなくVBox等でVMとしても動作させることができる非常に面白いOSです。

# Edge Router
Edge Routerとは、先ほどのVyOSをベースに作られたOSを搭載した小型の高機能ルータのことで、一般的なルータの機能はもちろんのこと
CiscoYamahaなどの企業向けルータでできることは大体できるにもかかわらず10k以内で購入できる非常に素晴らしいルータのことです。
実際の我が家の家庭内ネットワークではこのルータを利用していて、小さいながらもなかなか頑張ってくれています。

# 気づいた点
## VyOSではTrackやTrigger shutdownと呼ばれる機能がない
まず、TrackやTrigger Shutdownとは、VRRPという冗長化機能を使用する際に設定されるもので

[ インターネット ]
/ \
/ \
[ Router ] [ Router ]
| |
[ L2SW ]
|
[ PC ]

例としてPC側にVRRPを設定してこのような構成を組んでいるときに、インターネット側が切断されてしまったと想定すると
PC側の回線は接続されている状態なのでVRRPのみでは障害検知ができません。
そこで、先ほどの機能を設定することで対向の回線がDownした際にはPC側もDownするので冗長化構成が効率的に気のすることになります。
そのTrackやTrigger shutdownと呼ばれる機能ですが、私の調べた限りではVyOSに存在しないようです。
とても残念ではありますが、VRRP構成を組んでいるルータ間で渡となる回線を作り、OSPFで自動的にルーティングさせることで回避できます。

# VRRPの仕様
先ほども取り上げたVRRPですが、私はどうしてもこの構成をインターネット側に取り入れたかったのですが、某comのONUの仕様で
MACアドレスの一致した機器以外は接続できないためVRRPは構成できない状態でした。
そこで、VRRPを構成する機器のMACアドレスを同一にすれば問題が解決するのではないかと考えて実際に行ってみました。
結果としては成功したものの、不安定でありなかなかうまいようには行きませんでした。
しかし、私はこの際に両機器がVRRPの切り替わりを正常に行えていることに疑問を抱きました。
なぜかというと、MACアドレスを同一にしているのであればお互いで疎通をとることはできないはずなのにもかかわらず
瞬時に切り替わりを行えていたからです。その原因を探ってみると、VRRPはペアとなる機器に直接パケットを送るのではなく
masterとなるルータがHelloパケットと呼ばれるパケットを定期的にユニキャストしていたことが原因のようです。
この結果、MACアドレスが同一でもbackupルータはHelloを正常に確認できるので、VRRPも正常に切り替えを行えていたようです。

# 〆
今回はあまり技術的な内容を書くことができず、何をしたのかも詳しく書けていないのでそのうち記事にしたいと思います。