質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

ただいまの
回答率

89.20%

VirtualBOXでゲストOS間でpingが通らない

受付中

回答 1

投稿 編集

  • 評価
  • クリップ 1
  • VIEW 2,706
退会済みユーザー

退会済みユーザー

VirtualBOX上でvagrantを使用し、2個の仮想マシンA、B(CentOS 7)を作成しました。
仮想マシンAでのifconfigは

enp0s3: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
inet 10.12.1.252  netmask 255.0.0.0  broadcast 10.255.255.255
ether 08:00:27:d9:83:35  txqueuelen 1000  (Ethernet)
RX packets 531  bytes 53059 (51.8 KiB)
RX errors 0  dropped 0  overruns 0  frame 0
TX packets 439  bytes 52958 (51.7 KiB)
TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

enp0s8: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
ether 00:00:00:00:00:01  txqueuelen 1000  (Ethernet)
RX packets 18  bytes 6156 (6.0 KiB)
RX errors 0  dropped 0  overruns 0  frame 0
TX packets 52  bytes 9336 (9.1 KiB)
TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

仮想マシンBでのifconfigは

enp0s3: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
inet 10.12.1.253  netmask 255.0.0.0  broadcast 10.255.255.255
ether 08:00:27:d9:83:35  txqueuelen 1000  (Ethernet)
RX packets 522  bytes 52413 (51.1 KiB)
RX errors 0  dropped 0  overruns 0  frame 0
TX packets 422  bytes 51486 (50.2 KiB)
TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

enp0s8: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
ether 00:00:00:00:00:02  txqueuelen 1000  (Ethernet)
RX packets 20  bytes 6840 (6.6 KiB)
RX errors 0  dropped 0  overruns 0  frame 0
TX packets 51  bytes 8994 (8.7 KiB)
TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

となっています。

ここでお互いに「ping 10.12.1.252」「ping 10.12.1.253」と打ってみましたが、

PING 10.12.1.253 (10.12.1.253) 56(84) bytes of data.
From 10.12.1.252 icmp_seq=1 Destination Host Unreachable
From 10.12.1.252 icmp_seq=2 Destination Host Unreachable
From 10.12.1.252 icmp_seq=3 Destination Host Unreachable
From 10.12.1.252 icmp_seq=4 Destination Host Unreachable
となってエラーになってしまいます。

ググったところ「宛先ホストに到達できません」とのことですが、具体的な対策方法がわかりません。
どこを直せば対処できるでしょうか?
どこをみれば問題があるとわかるでしょうか?

すでに行ってみた対処方法として、仮想マシンA、B両方に対し「systemctl stop firewalld」でファイアウォール停止、
「/etc/selinux/config」を編集し、SELinux無効化は行いました。
念のため、変更後に「vagrant halt / up」で再起動も行いました。


追加情報です。
「VirtualBox VMs」内の「*vbox」ファイルのうち、<NetWork>タグは以下のようになっています。

<Network>
<Adapter slot="0" enabled="true" MACAddress="080027D98335" type="82540EM">
<NAT>
<DNS use-proxy="true"/>
<Forwarding name="ssh" proto="1" hostport="2241" guestport="22"/>
</NAT>
</Adapter>
<Adapter slot="1" enabled="true" MACAddress="000000000001" type="82540EM">
<DisabledModes>
<BridgedInterface name="eth1"/>
<NATNetwork name="NatNetwork"/>
</DisabledModes>
<InternalNetwork name="intnet"/>
</Adapter>
</Network>

  • 気になる質問をクリップする

    クリップした質問は、後からいつでもマイページで確認できます。

    またクリップした質問に回答があった際、通知やメールを受け取ることができます。

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 過去に投稿した質問と同じ内容の質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

質問への追記・修正、ベストアンサー選択の依頼

  • showkit

    2018/08/22 15:32

    GUI であれば アダプタの設定が「未割当」「NAT」「NATネットワーク」「ブリッジ」「内部」「ホストオンリー」「汎用ドライバ」のいずれかになっているはずですが、vagrant だとわかりにくいでしょうね。ゲストのそれぞれの *.vbox の <Network><Adapter>タグの中はどうなっていますか? ローカルのネットなので、はりつけても問題ないかと思います。

    キャンセル

  • 退会済みユーザー

    退会済みユーザー

    2018/08/22 15:58

    NetWorkタグの内容を貼り付けました。よろしくお願いいたします。

    キャンセル

回答 1

0

vagrantfileでネットワーク設定はどのようにしていますか?

Vagrant.configure("2") do |config|
  config.vm.box = "ubuntu/xenial64"
  config.vm.box_check_update = false
  // ここでネットワーク設定してます
  # config.vm.network "forwarded_port", guest: 80, host: 8080
  # config.vm.network "private_network", ip: "192.168.33.10"
  # config.vm.network "public_network"
end

config.vm.network がすべてコメントであった場合デフォルトで NATというネットワークの構成になります。この設定の場合はホストとゲスト間、またゲストからはホストを介して外部に通信が出来ますがゲスト間の通信は出来ません。

ゲスト間の通信を行う場合は下記のサイトに説明のある private_networkまたはpublic_networkを使用する必要があると思います。

よく使うVagrantfileの設定のまとめ-内部ネットワーク

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2018/08/22 16:11

    ネットワーク関係の設定は以下のとおりです。

    config.vm.network :forwarded_port, id: "ssh", guest: 22, host: 2241
    config.vm.network "private_network", ip: "10.12.1.252", virtualbox__intnet: true

    config.vm.provider "virtualbox" do |vb|
    vb.customize ["modifyvm", :id, "--cableconnected1", "on"]
    vb.customize ["modifyvm", :id, "--nictype1","82540EM"]
    vb.customize ["modifyvm", :id, "--nicpromisc1","deny"]

    vb.customize ["modifyvm", :id, "--cableconnected2", "on"]
    vb.customize ["modifyvm", :id, "--nic2","intnet"]
    vb.customize ["modifyvm", :id, "--intnet2","intnet"]
    vb.customize ["modifyvm", :id, "--nictype2","82540EM"]
    vb.customize ["modifyvm", :id, "--nicpromisc2","deny"]
    vb.customize ["modifyvm", :id, "--macaddress2","000000000001"]
    end

    「内部ネットワーク」の設定のつもりです。
    仮想マシンA、Bともに同じ設定で、IPアドレス、ポート番号、MACアドレスは変えてあります。

    キャンセル

  • 2018/08/22 16:35 編集

    そこまで細かい設定(仮想MacAddress)をしたこと私自身は無いので、勘違いしてたらすみません 。
    nicpromisc1","deny" ってやったら接続できないのでは?

    https://qiita.com/paihu/items/a1cb995e4469dd17303b

    IPアドレスだけ設定すればよいのなら無理に細かい設定をしないほうがよいかと思います。

    キャンセル

  • 2018/08/22 17:00

    vb.customize ["modifyvm", :id, "--cableconnected1", "on"]
    vb.customize ["modifyvm", :id, "--nictype1","82540EM"]
    vb.customize ["modifyvm", :id, "--nicpromisc1","deny"]

    vb.customize ["modifyvm", :id, "--cableconnected2", "on"]
    vb.customize ["modifyvm", :id, "--nic2","intnet"]
    vb.customize ["modifyvm", :id, "--intnet2","intnet"]
    vb.customize ["modifyvm", :id, "--nictype2","82540EM"]
    vb.customize ["modifyvm", :id, "--nicpromisc2","deny"]
    vb.customize ["modifyvm", :id, "--macaddress2","000000000001"]
    これらを全部コメントにして「vagrant halt / up」で再起動もしてみましたが、pingは通りませんでした。
    自分自身になら返ってくるんですが・・・

    キャンセル

15分調べてもわからないことは、teratailで質問しよう!

  • ただいまの回答率 89.20%
  • 質問をまとめることで、思考を整理して素早く解決
  • テンプレート機能で、簡単に質問をまとめられる