CentOS 6.5 64を使用していて、xenを使用して仮想マシン(CentOS)を作成しています
ifconfig
[root@CentOS ~]# ifconfig
eth0 Link encap:Ethernet HWaddr 08:00:27:54:B3:FA
inet6 addr: fe80::a00:27ff:fe54:b3fa/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:10087 errors:0 dropped:0 overruns:0 frame:0
TX packets:6094 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:763616 (745.7 KiB) TX bytes:541789 (529.0 KiB)
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:65536 Metric:1
RX packets:5 errors:0 dropped:0 overruns:0 frame:0
TX packets:5 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:560 (560.0 b) TX bytes:560 (560.0 b)
vif2.0 Link encap:Ethernet HWaddr FE:FF:FF:FF:FF:FF
inet6 addr: fe80::fcff:ffff:feff:ffff/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:32 errors:0 dropped:0 overruns:0 frame:0
TX packets:3969 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:32
RX bytes:2088 (2.0 KiB) TX bytes:267825 (261.5 KiB)
xenbr0 Link encap:Ethernet HWaddr 08:00:27:54:B3:FA
inet addr:192.168.1.2 Bcast:192.168.1.255 Mask:255.255.255.0
inet6 addr: fe80::a00:27ff:fe54:b3fa/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:9896 errors:0 dropped:0 overruns:0 frame:0
TX packets:1892 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:613149 (598.7 KiB) TX bytes:284945 (278.2 KiB)
brctl show
[root@CentOS ~]# brctl show
bridge name bridge id STP enabled interfaces
xenbr0 8000.08002754b3fa yes eth0
vif2.0
xl network-list
[root@CentOS ~]# xl network-list xc
Idx BE Mac Addr. handle state evt-ch tx-/rx-ring-ref BE-path
0 0 00:16:3e:22:4f:4b 0 4 10 768/769 /local/domain/0/backend/vif/2/0
brctl showmacs xenbr
[root@CentOS ~]# brctl showmacs xenbr0
port no mac addr is local? ageing timer
2 00:16:3e:22:4f:4b no 89.35
1 00:1e:8c:19:62:67 no 0.00
1 00:22:6b:fe:b9:36 no 4.92
1 08:00:27:54:b3:fa yes 0.00
1 90:c1:15:c4:89:6d no 25.00
1 e0:2a:82:3d:c0:c5 no 3.78
2 fe:ff:ff:ff:ff:ff yes 0.00
ping
同じホストから仮想マシンにpingを実行します
[root@CentOS ~]# ping 192.168.1.120
PING 192.168.1.120 (192.168.1.120) 56(84) bytes of data.
64 bytes from 192.168.1.120: icmp_seq=1 ttl=64 time=2.78 ms
64 bytes from 192.168.1.120: icmp_seq=2 ttl=64 time=0.916 ms
64 bytes from 192.168.1.120: icmp_seq=3 ttl=64 time=0.917 ms
^C
--- 192.168.1.120 ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2370ms
rtt min/avg/max/mdev = 0.916/1.538/2.782/0.879 ms
ローカルネットワーク内のデバイスから仮想マシンにpingを実行する
C:\Users\motaz>ping 192.168.1.120
Pinging 192.168.1.120 with 32 bytes of data:
Request timed out.
Request timed out.
Request timed out.
iptables
[root@CentOS ~]# iptables -L -v
Chain INPUT (policy ACCEPT 0 packets, 0 bytes)
pkts bytes target prot opt in out source destination
11 700 ACCEPT all -- any any anywhere anywhere state RELATED,ESTABLISHED
0 0 ACCEPT icmp -- any any anywhere anywhere
0 0 ACCEPT all -- lo any anywhere anywhere
0 0 ACCEPT tcp -- any any anywhere anywhere state NEW tcp dpt:ssh
0 0 REJECT all -- any any anywhere anywhere reject-with icmp-Host-prohibited
Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
pkts bytes target prot opt in out source destination
0 0 ACCEPT all -- any any anywhere anywhere PHYSDEV match --physdev-is-bridged
0 0 REJECT all -- any any anywhere anywhere reject-with icmp-Host-prohibited
Chain OUTPUT (policy ACCEPT 8 packets, 864 bytes)
pkts bytes target prot opt in out source destination
これを解決するためのアイデアを私に与えることができる人は誰でも、私は感謝します。
まず、VirtualBoxを使用してXENサーバーをホストしている場合は、ワイヤレスネットワークではなくイーサネットを使用し、プロミスキャスモードを「すべて許可」に設定してください。
次に、すべてをクリーンにするために、XENを使用したCentOSのクリーンインストールから始めて、BridgeNetworkとCentOS VMをインストールします。
/var/www/html/centos/6.3/os/i386/にCentOSISOが抽出された外部サーバー192.168.1.6と、/ var/www/html/centos/6.3/os/i386 /ks.cfgにキックスタートファイルがあるとします。および/var/www/html/centos/6.3/os/i386/repodataと正しい名前は、repodata /TRANS.TBLファイルの名前と一致します
XENサーバー(CentOS + XEN)に、次のパッケージをインストールします。
yum install -y rsync wget vim-enhanced openssh-clients
yum install -y libvirt python-virtinst libvirt-daemon-xen
yum install -y bridge-utils tunctl
次に、ifcfg- *ファイルを編集してブリッジを作成します
echo "DEVICE=br0
TYPE=Bridge
BOOTPROTO=dhcp
ONBOOT=yes" > /etc/sysconfig/network-scripts/ifcfg-br0
echo "DEVICE=eth0
HWADDR=XX:XX:XX:XX:XX:XX
ONBOOT=yes
TYPE=Ethernet
IPV6INIT=no
USERCTL=no
BRIDGE=br0" > /etc/sysconfig/network-scripts/ifcfg-eth0
編集HWADDR=XX:XX:XX:XX:XX:XX
MACアドレスに一致する行。 sshコンソールで再起動しないでください。VBoxコンソールを使用してください
reboot
再起動後、DHCPサーバーがあると仮定すると、XENサーバーは新しいIPを取得します。VBoxコンソールからログインして、新しいIPを取得します。
ifconfigの結果は次のようになります
br0 Link encap:Ethernet HWaddr 08:00:27:23:54:69
inet addr:192.168.1.105 Bcast:192.168.1.255 Mask:255.255.255.0
inet6 addr: fe80::a00:27ff:fe23:5469/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:5063 errors:0 dropped:0 overruns:0 frame:0
TX packets:3142 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:34251267 (32.6 MiB) TX bytes:361205 (352.7 KiB)
eth0 Link encap:Ethernet HWaddr 08:00:27:23:54:69
inet6 addr: fe80::a00:27ff:fe23:5469/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:149910 errors:0 dropped:0 overruns:0 frame:0
TX packets:5045 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:182020057 (173.5 MiB) TX bytes:493792 (482.2 KiB)
これでブリッジの準備が整いました。br0のIPを使用してsshコンソールを再度取得できます。
以前のブリッジを使用するXEN上に仮想マシンを作成するには:
cd /var/lib/xen/images/
仮想ディスクを作成します。
dd if=/dev/zero of=centos_1.img bs=4K count=0 seek=1024K
qemu-img create -f raw centos_1.img 8G
次に、virt-installを使用してVMを作成します。
virt-install -d -n TestVM1 -r 512 --vcpus=1 \
--bridge=br0 --disk /var/lib/xen/images/centos_1.img \
--nographics -p -l "http://192.168.1.6/centos/6.3/os/i386" \
--extra-args="text console=com1 utf8 console=hvc0 ks=http://192.168.1.6/centos/6.3/os/i386/ks.cfg"
これで、VMが起動し、DHCPサーバーからIPを正常に取得できるようになり、無人リモートインストールを完了できるようになります。
XENでのifconfigの結果は次のようになります。
br0 Link encap:Ethernet HWaddr 08:00:27:23:54:69
inet addr:192.168.1.105 Bcast:192.168.1.255 Mask:255.255.255.0
inet6 addr: fe80::a00:27ff:fe23:5469/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:10247 errors:0 dropped:0 overruns:0 frame:0
TX packets:8090 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:102264338 (97.5 MiB) TX bytes:827859 (808.4 KiB)
eth0 Link encap:Ethernet HWaddr 08:00:27:23:54:69
inet6 addr: fe80::a00:27ff:fe23:5469/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:998780 errors:0 dropped:0 overruns:0 frame:0
TX packets:37992 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:724701715 (691.1 MiB) TX bytes:2897912 (2.7 MiB)
vif5.0 Link encap:Ethernet HWaddr FE:FF:FF:FF:FF:FF
inet6 addr: fe80::fcff:ffff:feff:ffff/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:37 errors:0 dropped:0 overruns:0 frame:0
TX packets:67 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:32
RX bytes:4381 (4.2 KiB) TX bytes:9842 (9.6 KiB)
インストールが完了したら、xenコンソールを使用してIPを取得し、sshコンソールをインストールできます。
これがお役に立てば幸いです。 ここ から入手しました。
ブリッジはすべてのトラフィックをブリッジ経由で転送しません
cause:ネットワークブリッジは、ブリッジを介してすべてのトラフィックを転送するわけではありません。定義上、ブリッジはブロードキャストトラフィックを転送します。他のネットワークトラフィックは、ターゲット(MACアドレス)がトラフィックの反対側にある場合にのみ転送されます。 MACアドレスがトラフィックの反対側にない場合、転送されません。
solution:ブリッジを介してすべてのトラフィックを転送するには、「iptables」に転送ルールを設定する必要があります。残念ながら、このドキュメントには変数が多すぎて、その方法を詳しく説明できません。このソリューションを実装する必要がある場合は、NovellLinuxパートナーに連絡する必要がある場合があります。
ソリューション:別のソリューションは、PCIパススルーを実行することです。これは、Xenのドキュメントに詳しく記載されています。ただし、現時点では、準仮想ドミアンのみが利用できることに注意してください。 Intel-VTdテクノロジーをサポートする新しいチップとマザーボードにより、完全仮想ドメインでPCIパススルーを使用できるようになります。
問題が解決するかどうかはわかりませんが、/etc/sysctl.conf
を開いて次のように設定してみましたか。
net.ipv4.ip_forward = 1
新しい構成を再ロードするには、network
を再起動する必要がある場合があります。
service network restart
Sysctl-aを確認してください
net.ipv6.conf.all.forwarding = 0が見つかります
sysctl.confにnet.ipv6.conf.all.forwarding = 1を追加できます
次に、sysctl-pを実行して新しい設定をロードします。
それが機能しない場合は、にリストされている他の変数を変更してください
sysctl -a | grep forward