VyOSでsFlow v5、NetFlowの検証環境を手に入れる

はじめに

これまでNetFlow関連の記事を3記事掲載してきました。

NetFlowの見積方法
「NetFlowとは?」「フローとは?」「ネットフローとは?」を5分で理解する
NetFlow、xFlowはなぜ再度注目されつつあるのか?

上記3記事を読んで頂ければ、きっとNetFlowを収集・活用してみようか?
と思った読者の方もいるのではないでしょうか。

今回の記事は、少し趣を変えまして当方がxFlow検証をしていた時に苦労した、「sFlow v5をエクスポート出来る機器が会社になかった問題」のソリューションをご紹介したいと思います。

弊社にはFlexible NetFlowをエクスポート出来るルータが運よくあったのですが、sFlow v5をエクスポート出来る機器がありませんでした(※Flexible NetFlowに関しては別記事でがっつり説明しようと思いますので、お楽しみに)。
そこで以下のソフトウェアを組み合わせて、sFlow v5をエクスポートしたお話をご紹介したいと思います。

sFlow v5検証に必要なソフトウェア

  • VyOS :ネットワークOS。ルータが構築出来て、sFlow v5対応。NetFlow v5,v9もサポート!!
  • Oracle VM VirtualBox:VyOSを稼働させるためのクロスプラットフォーム仮想化ソフトウェア。VyOSが動作するのであれば、他の仮想化ソフトウェアでも可。
  • フローコレクター

つまり、「Good Job!! VyOS」ということです。
sFlow v5をエクスポートするには、GNS3を使うソリューションもありましたが、別途メーカが提供するネットワークOSを準備したりと面倒に感じておりました。また、無料で使えるシミュレータでsFlow v5対応のものがあったのですが、2PCで実際に生成したトラフィックのフローを取得したかったので、利用を見送りました。

そこで、VyOSです。
ISOファイルでインストーラが提供されており、簡単なインストールと設定で直ぐに使えてしまう!!というなんとも魅力的なソフトウェアです。
そして、 Rolling releaseならフリーで使えます。VyOSを使って自宅で自作ルータを構築!!という方もたくさんいらっしゃるので、私も家でやってみようと決意した一人です。

雑談はさておき、sFlow v5を投げるまでのVyOSの設定とOracle VM VirtualBoxの構成をご紹介したいと思います。

インストールステップ

  1. Oracle VM VirtualBoxのインストール ※本記事では省略
    (他サイトで丁寧に解説されておりますので、割愛させていただきます)
  2. Oracle VM VirtualBoxの構成
  3. VyOSのインストール ※本記事では省略
    (他サイトで丁寧に解説されておりますので、割愛させていただきます)
  4. VyOSの設定
  5. フローコレクターの設置※本記事では省略。

Oracle VM VirtualBoxの構成

今回Oracle VM VirtualBoxに設定した構成を図にしてみました。

図1 仮想マシン構成

VyOSとフローコレクター2つの仮想マシンを作成しました。
VyOSにはフローの送信元となるeth0(ブリッジアダプター)と管理用のeth1(ホストオンリーアダプター)を準備しました。
そして、フローコレクター側はeth0(ブリッジアダプター)のみです。
本記事ではOracle VM VirtualBox、VyOSのインストールは割愛しておりますので、ご了承ください。

それでは、図1の通り仮想マシンの設定が済んでいること前提でVyOSの設定方法を紹介したいと思います。

VyOSの設定

VyOSにログインし、以下のコマンドを実行しました。
注意) 赤字は説明書きです

$ configure
# set interfaces ethernet eth0 address 192.168.81.199/24
# set interfaces ethernet eth1 address 192.168.56.199/24
# set service ssh
# commit
# save
※2NICに対するIPアドレス設定とssh設定
# show interfaces ethernet
 ethernet eth0 {
     address 192.168.81.199/24
     hw-id 08:00:27:73:77:57
 }
 ethernet eth1 {
     address 192.168.56.199/24
     hw-id 08:00:27:2d:0c:ae
 }
 # set protocols static route 0.0.0.0/0 next-hop 192.168.81.1
# commit
# save
※デフォルトGW設定
# set system flow-accounting interface eth0
# set system flow-accounting sflow server 192.168.81.121 port 6343
# commit
# save
※sFlow v5設定
# set service snmp community public authorization ro
※SNMP設定
# commit
# save

# set system flow-accounting interface eth0
# set system flow-accounting sflow server 192.168.81.121 port 6343

上記の2行がsFlow v5の設定となります。
eth0のsFlowデータをフローコレクターのIPアドレス(192.168.81.121)と宛先ポート(UDP:6343)に送信するといった設定となります。

ここまで終わりましたら、受信側であるNetVizura NFA側にログインし、tcpdumpコマンドを実行してみましょう。

※sFlow v5ではなくNetFlow v9を利用したい場合は、以下を設定してください。

# set system flow-accounting netflow engine-id 100
# set system flow-accounting netflow version 9
# set system flow-accounting netflow server 192.168.81.121 port 2055

sFlow v5が受信出来ております!!
これで本記事の目的であった「sFlow v5の検証環境を手に入れる」が達成されました。
任意の通信を発生させて当該通信をフローコレクターで分析できるようになりました。

おわりに

弊社では、以下の特徴を持ったntop社のntopngという製品を販売しております。

  • リアルタイム分析
  • アプリケーション分析
  • L2,L7サポート
  • フローコレクター
  • 脅威検知

ご興味のある方は以下のリンクから弊社までお問い合わせください。

こんな記事も読まれています

最新記事

おすすめ記事

  1. インターネット回線速度をグラフで見える化!Checkmk×Speedtest CLI活用術

  2. 【初心者向け Wazuh 第2弾】Windows&Linuxにエージェントを導入してログ収集を開始する方法

  3. デスクトップ仮想化の 4 通りの構成と Windows 11 マルチセッション

製品カテゴリー

その他の情報

TOP