web-dev-qa-db-ja.com

Raspberry Piに仮想マシンのUbuntuを介してインターネットに接続させます

OS Xの仮想マシンにUbuntu 12.04.5 LTSがインストールされています。直接イーサネットワイヤを介して同じMacに接続されたRaspberry Piがあります。 Macはwifi接続を介してインターネットに接続されています。

RPIをインターネットに接続したいが、ping <ip>wget <url>動作しません。奇妙なことに、apt-get ISworking。Ubuntu仮想マシンでは、すべてがインターネットに接続でき、問題ありません。

私がSudo tcpdump -a -v -i eth1 Ubuntuマシンおよびping 8.8.8.8 RPIでは、トラフィックがUbuntuに到達していることがわかりますが、RPIは応答しません。 Ubuntuでこれを見る:

10.0.0.101 > google-public-dns-a.google.com: ICMP echo request, id 2156, seq 1, length 64
09:49:47.008804 IP (tos 0x0, ttl 64, id 22891, offset 0, flags [DF], proto ICMP (1), length 84)
10.0.0.101 > google-public-dns-a.google.com: ICMP echo request, id 2156, seq 2, length 64
09:49:48.008648 IP (tos 0x0, ttl 64, id 22985, offset 0, flags [DF], proto ICMP (1), length 84)
...

wget http://google.comcurlなど、RPIでは、Ubuntu仮想マシンに到達するトラフィックが常に表示されますが、RPIには何も戻されません。

RPIをインターネットに接続するにはどうすればよいですか?

ありがとう

1
Marc

最後に、私はそれを機能させました。 apt-getは機能していたので、Ubuntu VMですべてが正しくセットアップされていると思いましたが、そうではありませんでした。私はこの投稿から解決策を得ました https://support.hidemyass.com/hc/en-us/articles/202721486-Using-Linux-Virtual-Machine-instead-of-a-router-for-VPN

Ubuntu VMで、eth0: インターネット、 eth1:イーサネットケーブルで接続されたRPI

Sudo sh -c "echo 1 > /proc/sys/net/ipv4/ip_forward"
Sudo iptables -A FORWARD -o eth0 -i eth1 -s 192.168.0.0/24 -m conntrack --ctstate NEW -j ACCEPT
Sudo iptables -A FORWARD -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
Sudo iptables -A POSTROUTING -t nat -j MASQUERADE
Sudo iptables-save | Sudo tee /etc/iptables.sav

/etc/sysctl.confのこの行のコメントを解除します

net.ipv4.ip_forward=1

apt-getそもそも働いていたのは私にとってはまだ謎です。

1
Marc