FreeBSD で 802.1q tag VLAN を扱う

FreeBSD

FreeBSD でも dot1q tag VLAN を扱うことが可能です.
今回は VLAN インターフェイスの作成,設定について解説します.

FreeBSD で 802.1q tag VLAN を扱う

扱い方は二通りありますので両方紹介します.

インターフェイス名.VLAN番号で作る

こちらのパターンは Linux でも馴染みのある方法だと思います.
「インターフェイス名.VLAN番号」という形でどのインターフェイスに紐づいているのかがわかりやすいのが特徴です.

コマンドラインで VLAN インターフェイスを作成する

コマンドで操作する場合はこのようなオペレーションになります.

# ifconfig lagg0.215 plumb
# ifconfig lagg0.215 inet 172.16.215.220/24

# ifconfig lagg0.215
lagg0.215: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
        options=4000403<RXCSUM,TXCSUM,LRO,NOMAP>
        ether 00:26:55:da:c6:b5
        inet 172.16.215.220 netmask 0xffffff00 broadcast 172.16.215.255
        groups: vlan
        vlan: 215 vlanproto: 802.1q vlanpcp: 0 parent interface: lagg0
        media: Ethernet autoselect
        status: active
        nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL>
  • ifconfig <interface-name>.<vlan-number> plumb
    このコマンドで VLAN インターフェイスを作成しています.この作成方法の場合,インターフェイス名と VLAN 番号が作成されたインターフェイスに自動的に設定されます.
  • ifconfig <interface-name>.<vlan-number> inet …
    IP アドレス等の設定を行います.

コマンドでの操作だとこれはとても簡単に済みます.

再起動後も利用できるように設定ファイルに記述する

/etc/rc.conf に以下のように設定を行います.

cloned_interfaces="lagg0.215"
ifconfig_lagg0.215="inet 172.16.215.220 netmask 255.255.255.0"

今回 lagg0 (リンクアグリゲーションを行っているインターフェイス) に VLAN を設定しているので,実際の cloned_interfaces は lagg0 も記載があります.例なので VLAN の設定部分だけ記載しています.

vlan番号で作る

こちらは「vlan<任意の番号>」のインターフェイスを作成する方法となります.
通常わかりやすいように VLAN 番号にすると思います.今回の例でもそのようにしていますが任意の番号をつけることも可能です.

# ifconfig vlan215 plumb
# ifconfig vlan215 inet 172.16.215.220/24 vlan 215 vlandev lagg0

# ifconfig vlan215
vlan215: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
        options=4000403<RXCSUM,TXCSUM,LRO,NOMAP>
        ether 00:26:55:da:c6:b5
        inet 172.16.215.220 netmask 0xffffff00 broadcast 172.16.215.255
        groups: vlan
        vlan: 215 vlanproto: 802.1q vlanpcp: 0 parent interface: lagg0
        media: Ethernet autoselect
        status: active
        nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL>
  • ifconfig vlan<任意の番号> plumb
    vlanXXX のインターフェイスを作成します.先の例と違い,こちらは擬似的なインターフェイスを作成するだけとなります.
  • ifconfig vlan<任意の番号> inet … vlan <VLAN-NUMBER> vlandev <INTERFACE>
    vlan で VLAN 番号を指定,vlandev で VLAN を利用するインターフェイスを指定

コマンドだとこちらのほうが指定が多いです.

再起動後も利用できるように設定ファイルに記述する

/etc/rc.conf に以下のように設定を行います.

cloned_interfaces="vlan215"
ifconfig_vlan215="inet 172.16.215.220 netmask 255.255.255.0 vlan 215 vlandev lagg0"

今回 lagg0 (リンクアグリゲーションを行っているインターフェイス) に VLAN を設定しているので,実際の cloned_interfaces は lagg0 も記載があります.例なので VLAN の設定部分だけ記載しています.

サラッと書いてしまいましたが,サクッと作成できます.
LAGG (リンクアグリゲーション・チーミング) のインターフェイスに作成しましたが,物理インターフェイスを指定することももちろん可能です.

VLAN も チーミングも活用して便利なサーバーやルーターを構築しましょう.

コメント

タイトルとURLをコピーしました