NG_VLAN(4) | FreeBSD Kernel Interfaces Manual | NG_VLAN(4) |
名称
ng_vlan — IEEE 802.1Q VLAN タグ付き netgraph ノードタイプ解説
vlan ノードタイプは、異なるフック間の IEEE 802.1Q 標準に従ってタグが付けられたフレームを多重化します。各ノードは、2 つの特別のフック、 downstream と nomatch、特別の VLAN タグとそれぞれ関連する“vlan”フックの任意の数を持っています。
フィルタされるために設定されるノードは、対応する“vlan”フックから送られます。 ETHERTYPE_VLAN フレームは、そのノードにタグが付けられた downstream (下流) のフック上で受け取られます。設定されたタグのうちのどれとも一致しないか、タイプ ETHERTYPE_VLAN にない場合、それは、 nomatch フックから送られます。 nomatch フックが接続されない場合、パケットが落とされます。
nomatch フック上で受け取られたイーサネットフレームは、 downstream (下流) のフックに変更せずにに渡されます。
“vlan”フックのうちのどれでも受け取られたイーサネットフレームは、それに従ってタグが付けられ、 downstream (下流) のフックに送られます。
フック
このノードタイプは、次のフックをサポートします:- downstream
- 一般的に、このフックは、 下部の フックを使用する ng_ether(4) ノードに接続されます。
- nomatch
- 一般的に、このフックも、 上部の フックを使用する ng_ether(4) タイプノードに接続されます。
- < 任意の有効な名前>
- 任意の他のフック名は、受け付けられ、その後、特別のタグに関係しているべきです。一般的に、このフックは、 ether フックを使用する ng_eiface(4) タイプノードに取り付けられます。
コントロールメッセージ
このノードタイプは、次を加えて、一般的なコントロールメッセージをサポートします:- NGM_VLAN_ADD_FILTER ( addfilter)
- タグにフックを関連させます。
- NGM_VLAN_DEL_FILTER ( delfilter)
- タグからのフックを分離します。
- NGM_VLAN_GET_TABLE ( gettable)
- すべてのフック/タグ関連付けのテーブルを返します。
使用例
#!/bin/sh ETHER_IF=rl0 ngctl -f- <<EOF shutdown ${ETHER_IF}: mkpeer ${ETHER_IF}: vlan lower downstream name ${ETHER_IF}:lower vlan connect ${ETHER_IF}: vlan: upper nomatch EOF ngctl mkpeer vlan: eiface vlan123 ether ngctl msg vlan: addfilter '{ vlan=123 hook="vlan123" }'
シャットダウン
このノードは、 NGM_SHUTDOWN コントロールメッセージを受け取るか、すべてのフックが切断されている時、シャットダウンします。歴史
ng_vlan ノードタイプは、 FreeBSD 4.10 で登場しました。作者
<ru@FreeBSD.org>March 1, 2004 | FreeBSD |