Memo

メモ > サーバ > 各論: Vagrant > IPアドレスの指定

■IPアドレスの指定
Vagrantfileの「config.vm.network」で、IPアドレスを指定できる(HTTPアクセスなどに使用するアドレス) いずれの場合も、SSHでのアクセスは 127.0.0.1 で行う Vagrantでpingが通らない!ゆえにVagrantネットワークを学び直したよ | ITかあさん http://www.kaasan.info/archives/3665 Vagrant 初心者 Network 設定 - Qiita https://qiita.com/yusk24/items/e43b25ce4eeda69b4b57 LAN内の他端末からvagrantの仮想マシンにsshする - Qiita https://qiita.com/teratsyk/items/10bf89422ce98265c8a8 よく使うVagrantfileの設定のまとめ https://www.virment.com/vagrantfile-settings/ ■forwarded_port
config.vm.network "forwarded_port", guest: 80, host: 8080
ホストマシンから http://localhost:8080/ でアクセスできる PCのIPアドレスを指定すれば、同一LAN内からVagrantにアクセスできる 詳細はこのドキュメントの「環境構築」の「localhostでアクセスする&同一LAN内からアクセスする」を参照 ■private_network
config.vm.network "private_network", ip: "192.168.33.10"
ホストマシンから 192.168.33.10 にアクセスできる サーバ内でIPアドレスを確認すると、以下のようになっている
$ ip a 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN link/loopback 00:00:00:00:00:00 brd 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:cb:d7:28 brd ff:ff:ff:ff:ff:ff inet 10.0.2.15/24 brd 10.0.2.255 scope global eth0 inet6 fe80::a00:27ff:fecb:d728/64 scope link valid_lft forever preferred_lft forever 3: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000 link/ether 08:00:27:ae:64:f9 brd ff:ff:ff:ff:ff:ff inet 192.168.33.10/24 brd 192.168.33.255 scope global eth1 inet6 fe80::a00:27ff:feae:64f9/64 scope link valid_lft forever preferred_lft forever
■public_network(DHCP)
config.vm.network "public_network"
以下の場合、ホストマシンから 192.168.1.105 にアクセスできる(毎回IPアドレスの確認が必要) 同一LAN内の他マシンからもアクセスできる
$ ip addr 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN link/loopback 00:00:00:00:00:00 brd 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:cb:d7:28 brd ff:ff:ff:ff:ff:ff inet 10.0.2.15/24 brd 10.0.2.255 scope global eth0 inet6 fe80::a00:27ff:fecb:d728/64 scope link valid_lft forever preferred_lft forever 3: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000 link/ether 08:00:27:ae:64:f9 brd ff:ff:ff:ff:ff:ff inet 192.168.1.105/24 brd 192.168.1.255 scope global eth1 inet6 fe80::a00:27ff:feae:64f9/64 scope link valid_lft forever preferred_lft forever $ ifconfig eth0 Link encap:Ethernet HWaddr 08:00:27:CB:D7:28 inet addr:10.0.2.15 Bcast:10.0.2.255 Mask:255.255.255.0 inet6 addr: fe80::a00:27ff:fecb:d728/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:868 errors:0 dropped:0 overruns:0 frame:0 TX packets:579 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:90222 (88.1 KiB) TX bytes:82612 (80.6 KiB) eth1 Link encap:Ethernet HWaddr 08:00:27:AE:64:F9 inet addr:192.168.1.105 Bcast:192.168.1.255 Mask:255.255.255.0 inet6 addr: fe80::a00:27ff:feae:64f9/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:510 errors:0 dropped:0 overruns:0 frame:0 TX packets:37 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:39865 (38.9 KiB) TX bytes:4801 (4.6 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:0 errors:0 dropped:0 overruns:0 frame:0 TX packets:0 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:0 (0.0 b) TX bytes:0 (0.0 b)
■両方を指定
config.vm.network "private_network", ip: "192.168.33.10" config.vm.network "public_network"
以下の場合、ホストマシンから 192.168.33.10 にアクセスできる 192.168.1.106 でもアクセスでき、このアドレスなら他マシンからもアクセスできる(毎回IPアドレスの確認が必要)
$ ip a 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN link/loopback 00:00:00:00:00:00 brd 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:cb:d7:28 brd ff:ff:ff:ff:ff:ff inet 10.0.2.15/24 brd 10.0.2.255 scope global eth0 inet6 fe80::a00:27ff:fecb:d728/64 scope link valid_lft forever preferred_lft forever 3: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000 link/ether 08:00:27:ae:64:f9 brd ff:ff:ff:ff:ff:ff inet 192.168.33.10/24 brd 192.168.33.255 scope global eth1 inet6 fe80::a00:27ff:feae:64f9/64 scope link valid_lft forever preferred_lft forever 4: eth2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000 link/ether 08:00:27:71:6d:ff brd ff:ff:ff:ff:ff:ff inet 192.168.1.106/24 brd 192.168.1.255 scope global eth2 inet6 fe80::a00:27ff:fe71:6dff/64 scope link valid_lft forever preferred_lft forever
■public_network(IP固定)
config.vm.network "public_network", ip: "192.168.1.10", bridge: "en0: Wi-Fi (AirPort)"
IPアドレスの重複があると、Vagrant起動時にエラーになる
The following SSH command responded with a non-zero exit status. Vagrant assumes that this means the command failed! /sbin/ifdown 'eth1' mv -f '/tmp/vagrant-network-entry-eth1-1526521968-0' '/etc/sysconfig/network-scripts/ifcfg-eth1' /sbin/ifup 'eth1' Stdout from the command: Determining if ip address 192.168.1.10 is already in use for device eth1... Error, some other host (60:F8:1D:BA:9D:46) already uses address 192.168.1.10. Stderr from the command:
config.vm.network "public_network", ip: "192.168.33.101", bridge: "en0: Wi-Fi (AirPort)"
他のアドレスを指定すればエラーが解消された …が、ブラウザから接続できない 試したネットワークのセグメントが 192.168.1.0/24 のため、192.168.33.0/24 だと通信できなかったのだと思われる また改めて検証したい

Advertisement