LoginSignup
0
1

More than 1 year has passed since last update.

CML2を使いこなす。(その14:トラフィックの生成)

Last updated at Posted at 2021-09-26

はじめに

前回はTRexを使うための準備まで行ったため、今回は実際にTRex Stateless Guiを使ったトラフィック生成を行ってみます。

TRex Stateless Gui画面について

File」→「Connect」からTRexに接続すると、以下のような画面が表示されます。

capture_09092021_085032.jpg

画面左に表示されている「Port 0」と「Port 1」はTRexのトラフィック送信用ポートの設定になります。

尚、TRex Stateless Gui接続に使われるeth0は生成したトラフィックを送信できないので、TRex Stateless Guiの画面には表示されません。

CML2上の名称 TRex Stateless Gui上の名称
eth0 ※表示なし
eth1 Port 0
eth2 Port 1

メニューバー

メニューバーの概要。

尚、TRex DaemonCML2で実装されているTRexノードにはサービスがインストールされていないため使用できません。

メニュー名 備考
File Connect/Disconnect 接続しているTRexから切断
Preferences ロードするファイル等の設定
exit TRex Stateless Guiの終了
Traffic Profiles Traffic Profiles Traffic Profiles画面からトラフィックを作成
Stats Dashboard 統計情報の表示
Capture Open Monitor パケットキャプチャの実施(要Service Mode)
TRex Daemon Open TRex Daemon TRex Daemonへの接続(CML2のTRexホストには未実装)
Help About TRex Stateless Guiのバージョン表示

トラフィックの生成方法

トラフィックの生成には、メニューバーの「Traffic Profiles」から編集画面を開いて作成していく方法と、左ペインのポートに紐付く「Profile」から作成していく方法があります。

また、トラフィックを生成して実際に流すまでには以下の作業が必要となります。

  1. ポートの基本設定
  2. Profileの作成(生成トラフィックの定義)

TRex Stateless Guiは名前の通りステートレスなトラフィックを作成するアプリケーションとなります。 TCPの3way Handshakeのようなステートフルなトラフィックを作成することはできません。

ポートの基本設定

左フレームの「Port 0」または「Port 1」を選択すると各ポートの設定が表示され、Acquireを選択することで、設定を編集、Releaseで編集を終了、Resetでデフォルト設定に戻すことができます。

Controlタブ

ポートの状態や設定を確認できます。

特に変更する必要はありませんが、設定できる項目はMulticastPromiscuousServiceの3つで、「IPv6 neighbors」を確認する場合や、パケットキャプチャを行う場合はServiceを有効にする必要があります。

capture_13092021_072144.jpg

Configuration

ポート設定のメインとなる設定。

ポートに指定するMAC&IP(Source)と、通信相手のMAC&IP(Destination)、TRexが繋がっているポートがタグVLANのポートの場合はVLANID(VLAN)を指定します。

MACアドレスの設定、IPアドレスの設定は「L2」、「L3」のラジオボタンを選択することで設定できます。

また、「Ping host」にアドレスを指定して「Ping」を選択することで、指定のホストと疎通確認することも可能です。

IPv6が有効となっているネットワークの場合は、「Control」タブの「Service」を有効にすることで「IPv6 neighbors」をスキャンできます。

トラフィックを送信する際は、「L2」もしくは「L3」の設定を一度Applyしておかないと、生成したトラフィックを送信することができないため、Applyしておきます。

capture_13092021_073146.jpg

Hardware counters

ポートの統計情報を確認できます。

TRexifconfigの情報を表示しているようです。

capture_13092021_075034.jpg

Profileの作成

左ペインの「Profile」→「New Profile」→適当なプロファイル名を入力することでトラフィックを生成するためのプロファイルを作成していきます。

capture_13092021_081119.jpg

画面左の「Build Stream」をクリックし、適当なストリーム名を入力して送信するパケットを組み立てていきます。

また、「Import Pcap」でパケットキャプチャファイルを読み込ませることもできるので、実際の環境で取得したキャプチャファイルがあるのであれば、「Import Pcap」で読みこませて編集しても良いかと思います。

Stream Properties

どの程度のレートで送信するか、次のストリームはいくつか等の設定を行います。

続けていくつかのストリームを流したい場合などに編集します。

capture_15092021_072434.jpg

Packet Editor

実際に流すパケットを組み立てていきます。

MACアドレスやチェックサム等は特に入力しなくても自動で調整されるため、最低限IPアドレス、ポート番号を設定すれば送信できる形になります。

capture_15092021_080229.jpg

Field Engine

Add instruction」でフィールドを追加することで、パケットサイズをランダムに変えたり、チェックサム値を変えたりできるようですが、まだ使いこなせていないため説明は割愛。

capture_15092021_081000.jpg

トラフィックの送信

Streamを作成したら、画面上のバーに表示されている実行ボタンを実行することで、作成したトラフィックを送信できます。

パケットキャプチャ等で確認し、指定したトラフィックが送信されていれば成功です。

capture_20092021_133716.jpg

おわりに

TCPの3way Handshakeが行えるようならば使い方の幅も広がりますが、TRex Stateless Guiではそこまでの操作はできないようです。

ただ、GUI上で簡単に任意のパケットを作成・送信できるのは、ACL等の確認を行うのに便利なので、簡単な操作だけでも覚えておいたほうが役に立つと思います。

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1