CentOS 6.5を実行しているVirtualBoxマシンがあります。 VirtualBoxのマシンのネットワーク設定で、2つのネットワークアダプターを作成しました。 1つ目はNATで、ゲストがインターネットに接続するために使用します。2つ目はHost-onlyに設定し、ホストコンピューターからSSHでWebサーバーにアクセスするために使用します。 VirtualBoxフォーラムでのこのチュートリアル は私が達成したいものですが、CentOS 6.5で/etc/network/interfaces
ファイルを見つけることができないため、構成が異なっていると思います。
NATとホストオンリーアダプターの両方をセットアップした後、VMを起動してip addr show
を実行し、eth0
とeth2
の2つのインターフェイスを持っています(なぜeth1
がスキップされたのかわかりません)。そのため、ifcfg-ethX
の/etc/sysconfig/network-scripts
ファイルを両方とも構成し、eth0
をDHCP(NATの場合)に設定し、eth2
を静的IP(ホストのみの場合)に設定します。 eth0
、ONBOOT=yes
の場合はeth2
、ONBOOT=no
の場合。この設定でインターネットをping
できる、つまりping -c 3 www.google.com
が返され、インターネットに接続できることがわかります(eth2
がダウンしている間)。
次に、ifup eth2
です。ホストマシンから、設定した静的IPを使用してSSH接続し、問題なく接続できます。しかし、今回ping -c www.google.com
を実行すると失敗し、eth0
がまだ稼働している場合でもインターネットへの接続が失われていることがわかります。 route -n
を実行すると、eth2
が間にある間、eth0
が最初の行と最後の行を占める表形式の出力が表示されます(失礼からVMを削除したため、実際の出力を投稿できません...)。
新しいCentOS VMを作成しましたが、同じセットアップを続行したいと思います。私のnetworking-fuは存在しないものに近いので、私はn00bです。それを適切に行うためのヒント(つまり、NATアダプタをeth0
を使用するように設定し、ホスト専用アダプタをeth1
ではなくeth2
を使用するように設定する方法、eth0
であってもeth1
を引き続き使用可能にする方法eth2
が稼働中です)。
更新
新しいVMが稼働しているので、最初のアダプターをホストのみに設定し、2番目のアダプターをNATに設定すると、問題なく動作するようです。次のように設定されています。
VirtualBoxネットワーク設定
vboxnet0
IPアドレスが10.3.0.1
に設定され、ネットワークマスク255.255.255.0
およびDHCPがオフ)CentOS VM /etc/sysconfig/network-scripts/ifcfg-ethX
設定
# ifcfg-eth0
DEVICE=eth0
HWADDR=08:00:27:EC:6C:B9
TYPE=Ethernet
UUID=1339bc30-...
ONBOOT=yes
NM_CONTROLLED=yes
BOOTPROTO=static
DHCPCLASS=
IPADDR=10.3.0.100
NETMASK=255.255.255.0
GATEWAY=10.3.0.1
# ifcfg-eth2
DEVICE=eth2
HWADDR=08:00:27:EB:73:BA
TYPE=Ethernet
UUID=1339bc30-...
ONBOOT=yes
NM_CONTROLLED=yes
BOOTPROTO=dhcp
ip route
の結果
10.0.3.0/24 dev eth2 proto kernel scope link src 10.0.3.15
10.3.0.0/24 dev eth0 proto kernel scope link src 10.3.0.100
169.254.0.0/16 dev eth0 scope link metric 1002
169.254.0.0/16 dev eth2 scope link metric 1003
default via 10.0.3.2 dev eth2
ip addr
の結果
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 16436 qdisc noqueue state UNKNOWN
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00:00
inet 127.0.0.1/8 scope Host lo
inet6 ::1/128 scope Host
valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
link/ether 08:00:27:ec:6c:b9 brd ff:ff:ff:ff:ff:ff
inet 10.3.0.100/24 brd 10.3.0.255 scope global eth0
inet6 fe80::a00:27ff:feec:6cb9/64 scope link
valid_lft forever preferred_lft forever
3: eth2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
link/ether 08:00:27:eb:73:ba brd ff:ff:ff:ff:ff:ff
inet 10.0.0.15/24 brd 10.0.3.255 scope global eth2
inet6 fe80::a00:27ff:feeb:73ba/64 scope link
valid_lft forever preferred_lft forever
問題は、ゲートウェイの定義がDHCPと衝突することです(またはありました)。どういうわけか、インターフェースの順序がそれに影響を与えるようです。
基本的な問題は次のとおりです。2つのネットワークカードを使用してルーティングを行う方法を教えてください。私が理解しているように、ホストオンリーカードはホストへの接続にのみ使用されます。したがって、このインターフェースにはゲートウェイを定義しないでください。しかし、おそらくこれは、最初のインターフェースがDHCPを使用している場合にのみ機能します。
さらに、DHCPを完全に回避することを検討してください。 NATインターフェースは静的構成でも機能します。