 |
≫ |
|
|
 |
28-APR-04, revised 15-FEB-06 |
 |
本ページに記載してある内容は限られた評価環境に於ける検証結果に基づいたものです。本ページの情報を利用する前に予め 技術情報、 保証について、ディストリビュータが提供する
WEBサイト等をご覧ください。 |
このページは、bondingドライバと vlanドライバの構成例を示します。 |
Red Hat EL3で bondingと VLANドライバを同時利用する場合、NIC driver/hardware
と bonding driverの組み合わせによって、network通信ができないケースがあります。これは、HPE製bonding driverおよび RHEL3/U4未満のディストリビューション標準添付
bonding driverが NIC driver/hardwareでの vlanタグ挿入/削除機能に対応していないため発生すると考えられます。この問題は、以下の環境で確認されました。
|
|
+ |
- bonding v1.0.4v
- bcm5700 v8.2.14a
- vlan v1.8.0r-14
- スイッチングハブ: HP ProCurve 6108
|
Red Hat EL3で bondingと VLANドライバを同時利用する場合には、VLANサポートが強化された RHEL3/U4以上のディストリビューション標準添付
bonding driverを使ってください。 |
- Red Hat Linux EL 3 AS QU1
|
+ |
- bonding v1.0.4g
- bcm5700 v7.1.9c
- vlan v1.8.0-14
- スイッチングハブ: HP ProCurve 2512
|
|
設定例を示すために、以下の構成を使用します。 |
 |
インターフェイス設定ファイルは以下の通りで、bondingインターフェイス設定にネットワーク情報(IPアドレス等)が設定されていないことに注意してください。また、bondingインターフェイスをvlanと併用する場合、使用できるリンク監視モードは MII(miimonオプション)のみ*となります。
各インターフェイスおよび、スイッチングハブの設定が終了したらマシンをリブートします。
|
 |
【bondingインターフェイスの設定 】 |
 |
# cat /etc/sysconfig/network-scripts/ifcfg-bond0
DEVICE=bond0
ONBOOT=yes
BOOTPROTO=static
USERCTL=no
MACADDR=00:01:02:03:04:05
# cat /etc/sysconfig/network-scripts ifcfg-eth0
DEVICE=eth0
USERCTL=no
ONBOOT=yes
MASTER=bond0
SLAVE=yes
BOOTPROTO=none
# cat /etc/sysconfig/network-scripts ifcfg-eth1
DEVICE=eth1
USERCTL=no
ONBOOT=yes
MASTER=bond0
SLAVE=yes
BOOTPROTO=none
# cat /etc/modules.conf
alias bond0 bonding
alias eth0 bcm5700
alias eth1 bcm5700
alias scsi_hostadapter aic7xxx
alias usb-controller usb-ohci
options bond0 miimon=100 mode=1
|
|
【vlanインターフェイスの設定】 |
 |
# cat /proc/net/vlan/config
nametype DEV_PLUS_VID_NO_PAD
bond0 10 192.168.1.1 255.255.255.0
bond0 11 192.168.2.1 255.255.255.0
|
|
【スイッチングハブの設定】 |
 |
スイッチングハブでは、サーバーが接続されるポート(port1,2)を”Tagged”、クライアントが接続されるポート(port4,5)を”Untagged”に設定します。以下は、HP ProCurve 2512での設定例です。 |
 |
 |
*vlanモジュールの仕様上、実インターフェイスへ IPアドレスを指定することはできません |
【インターフェイスの確認】 |
 |
bondingインターフェイスおよびvlanインターフェイスが正常にアップしていることを確認します。また、vlanインターフェイスに対して指定したIPアドレス,ネットマスクおよび vlan IDが設定されていることを確認します。
|
# ifconfig -a
bond0 |
 |
Link encap:Ethernet HWaddr 00:01:02:03:04:05
UP BROADCAST RUNNING MASTER MULTICAST MTU:1500 Metric:1
RX packets:354 errors:0 dropped:0 overruns:0 frame:0
TX packets:172 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:32502 (31.7 Kb) TX bytes:17854 (17.4 Kb) |
 |
bond0.10 |
 |
Link encap:Ethernet HWaddr 00:01:02:03:04:05
inet addr:192.168.1.1 Bcast:192.168.1.255 Mask:255.255.255.0
UP BROADCAST RUNNING MASTER MULTICAST MTU:1500 Metric:1
RX packets:334 errors:0 dropped:0 overruns:0 frame:0
TX packets:153 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:24564 (23.9 Kb) TX bytes:15326 (14.9 Kb) |
 |
bond0.11 |
 |
Link encap:Ethernet HWaddr 00:01:02:03:04:05
inet addr:192.168.2.1 Bcast:192.168.2.255 Mask:255.255.255.0
UP BROADCAST RUNNING MASTER MULTICAST MTU:1500 Metric:1
RX packets:20 errors:0 dropped:0 overruns:0 frame:0
TX packets:19 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:1566 (1.5 Kb) TX bytes:1714 (1.6 Kb) |
 |
eth0 |
 |
Link encap:Ethernet HWaddr 00:01:02:03:04:05
UP BROADCAST RUNNING SLAVE MULTICAST MTU:1500 Metric:1
RX packets:206 errors:0 dropped:0 overruns:0 frame:0
TX packets:172 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:19196 (18.7 Kb) TX bytes:17854 (17.4 Kb)
Interrupt:15 Memory:f7ed0000-f7ee0000 |
 |
eth1 |
 |
Link encap:Ethernet HWaddr 00:01:02:03:04:05
UP BROADCAST RUNNING NOARP SLAVE MULTICAST MTU:1500 Metric:1
RX packets:148 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:13306 (12.9 Kb) TX bytes:0 (0.0 b)
Interrupt:15 Memory:f7ff0000-f8000000 |
 |
lo |
 |
Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:24 errors:0 dropped:0 overruns:0 frame:0
TX packets:24 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:1884 (1.8 Kb) TX bytes:1884 (1.8 Kb) |
 |
|
|
【bondingインターフェイス、vlanインターフェイスの詳細情報】 |
 |
bondingインターフェイスの詳細情報を確認するには、“/proc/net/bond0/info“を参照します。ここでは、動作モード、ポーリングインターバルの値を確認します。 |
# cat /proc/net/bond0/info
Bonding Mode: fault-tolerance (active-backup)
Currently Active Slave: eth0
MII Status: up
MII Polling Interval (ms): 100
Up Delay (ms): 0
Down Delay (ms): 0
Multicast Mode: all slaves
Slave Interface: eth1
MII Status: up
Link Failure Count: 0
Slave Interface: eth0
MII Status: up
Link Failure Count: 0
|
|
 |
vlanインターフェイスの構成情報を確認するには “/proc/net/vlan/config“ を、各vlanインターフェイスの状態を確認するには“/proc/net/vlan/インターフェイス名”を参照します。 |
# cat /proc/net/vlan/config
VLAN Dev name | VLAN ID
Name-Type: VLAN_NAME_TYPE_RAW_PLUS_VID_NO_PAD
bond0.10 | 10 | bond0
bond0.11 | 11 | bond0
# cat /proc/net/vlan/bond0.10 |
 |
bond0.10 VID: 10 REORDER_HDR : |
 |
1 dev->priv_flags: 1 |
total frames received : |
334 |
total bytes received : |
24564 |
Broadcast/Multicast Rcvd : |
2 |
 |
 |
total frames transmitted : |
 |
153 |
total bytes transmitted : |
15326 |
total headroom inc : |
0 |
total encap on xmit : |
153 |
 |
Device: bond0
INGRESS priority mappings: 0:0 1:0 2:0 3:0 4:0 5:0 6:0 7:0
EGRESSS priority Mappings:
# cat /proc/net/vlan/bond0.11 |
 |
bond0.11 VID: 11 REORDER_HDR: |
 |
1 dev->priv_flags: 1 |
total frames received : |
20 |
total bytes received : |
1566 |
Broadcast/Multicast Rcvd : |
0 |
 |
 |
total frames transmitted : |
 |
19 |
total bytes transmitted : |
1714 |
total headroom inc : |
0 |
total encap on xmit : |
19 |
 |
Device: bond0
INGRESS priority mappings: 0:0 1:0 2:0 3:0 4:0 5:0 6:0 7:0
EGRESSS priority Mappings:
|
|
【サーバー・クライアント間の通信】 |
 |
各vlanグループでのみ送受信が出来ることを確認します。そのため、各クライアントからブロードキャストパケットを送信し、自身が所属する vlanグループからのみレスポンスが返ってくることを確認します。なお、ブロードキャストパケットを送信する以外に tcpdump(または ethereal等)の snifferツールで確認、または HUBの activity LEDで確認する方法もあります。
pingの結果でパケットが duplicate(DUP!)になっているのは、ブロードキャストパケットを受信したvlanグループ内のインターフェイス全てがレスポンスを返すためです。従って、特に問題はありません。 |
# ping -b 192.168.1.255
PING 192.168.1.255 (192.168.1.255) from 192.168.1.100 : 56(84) bytes of data.
64 bytes from 192.168.1.100: icmp_seq=0 ttl=255 time=51 usec
64 bytes from 192.168.1.1: icmp_seq=0 ttl=64 time=187 usec (DUP!)
64 bytes from 192.168.1.1: icmp_seq=0 ttl=64 time=190 usec (DUP!)
… snip …
64 bytes from 192.168.1.100: icmp_seq=6 ttl=255 time=13 usec
64 bytes from 192.168.1.1: icmp_seq=6 ttl=64 time=153 usec (DUP!)
64 bytes from 192.168.1.1: icmp_seq=6 ttl=64 time=154 usec (DUP!)
--- 192.168.1.255 ping statistics ---
7 packets transmitted, 7 packets received, +14 duplicates, 0% packet loss
round-trip min/avg/max/mdev = 0.013/0.125/0.194/0.067 ms
|
|
# ping -b 192.168.2.255
PING 192.168.2.255 (192.168.2.255) from 192.168.2.100 : 56(84) bytes of data.
64 bytes from 192.168.2.100: icmp_seq=0 ttl=255 time=16 usec
64 bytes from 192.168.2.1: icmp_seq=0 ttl=64 time=203 usec (DUP!)
64 bytes from 192.168.2.1: icmp_seq=0 ttl=64 time=205 usec (DUP!)
… snip …
64 bytes from 192.168.2.100: icmp_seq=4 ttl=255 time=8 usec
64 bytes from 192.168.2.1: icmp_seq=4 ttl=64 time=177 usec (DUP!)
64 bytes from 192.168.2.1: icmp_seq=4 ttl=64 time=179 usec (DUP!)
--- 192.168.2.255 ping statistics ---
5 packets transmitted, 5 packets received, +10 duplicates, 0% packet loss
round-trip min/avg/max/mdev = 0.007/0.126/0.205/0.084 ms
|
|
|