Fedora ホストの VirtualBox に Debian ゲストを設定しました。私は、NAT(ゲストのインターネット、うまく動作します)とホストのみ(ssh
ホストからゲストへnfs
など)の2つのアダプタを使用します。ホストからゲストに移動できますが、ssh
その逆はできません。実際、ping
およびtraceroute
両方を除く他のすべてのネットワーク関連ツールは、「ホストへのパスなし」という結果を提供します。
いくつかの情報:
ホストIPは192.168.29.1です。
axirma@dev:~$ 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
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:25:1f:71 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:fe25:1f71/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:6d:16:e6 brd ff:ff:ff:ff:ff:ff
inet 192.168.29.2/24 brd 192.168.29.255 scope global eth1
inet6 fe80::a00:27ff:fe6d:16e6/64 scope link
valid_lft forever preferred_lft forever
axirma@dev:~$ ip route
default via 10.0.2.2 dev eth0
10.0.2.0/24 dev eth0 proto kernel scope link src 10.0.2.15
192.168.29.0/24 dev eth1 proto kernel scope link src 192.168.29.2
axirma@dev:~$ ip route get 192.168.29.1
192.168.29.1 dev eth1 src 192.168.29.2
cache ipid 0x1910 rtt 7ms rttvar 7ms cwnd 10
axirma@dev:~$ arp
Address HWtype HWaddress Flags Mask Iface
10.0.2.2 ether 52:54:00:12:35:02 C eth0
host ether 0a:00:27:00:00:00 C eth1
axirma@dev:~$ ping -c 4 192.168.29.1
PING 192.168.29.1 (192.168.29.1) 56(84) bytes of data.
64 bytes from 192.168.29.1: icmp_req=1 ttl=64 time=0.247 ms
64 bytes from 192.168.29.1: icmp_req=2 ttl=64 time=0.403 ms
64 bytes from 192.168.29.1: icmp_req=3 ttl=64 time=0.446 ms
64 bytes from 192.168.29.1: icmp_req=4 ttl=64 time=0.636 ms
--- 192.168.29.1 ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3003ms
rtt min/avg/max/mdev = 0.247/0.433/0.636/0.138 ms
axirma@dev:~$ traceroute 192.169.29.1
traceroute to 192.168.29.1 (192.168.29.1), 30 hops max, 60 byte packets
1 host (192.168.29.1) 0.152 ms !X 0.141 ms !X 0.143 ms !X
axirma@dev:~$ nc -vz 192.168.29.1 22
host [192.168.29.1] 22 (ssh) : No route to host
axirma@dev:~$ ssh [email protected]
ssh: connect to host 192.168.29.1 port 22: No route to host
より多くの情報を提供できる場合はお知らせください。
答え1
質問これは、VirtualBox のホスト ネットワーク インターフェイスからのみ着信パケットを拒否するルール セットを使用して、Fedora ホストにデフォルトのファイアウォールが構成されているためです。以下のルールを見ると、icmp
パケットが許可されていることがわかります。それが機能する理由ですping
。
[alexandru@the-host ~]$ sudo iptables -vL -t filter
Chain INPUT (policy ACCEPT 0 packets, 0 bytes)
pkts bytes target prot opt in out source destination
435K 493M ACCEPT all -- any any anywhere anywhere state RELATED,ESTABLISHED
15 1559 ACCEPT icmp -- any any anywhere anywhere
20 1054 ACCEPT all -- lo any anywhere anywhere
51 11040 ACCEPT udp -- any any anywhere 224.0.0.251 state NEW udp dpt:mdns
25148 1821K 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 REJECT all -- any any anywhere anywhere reject-with icmp-host-prohibited
Chain OUTPUT (policy ACCEPT 332K packets, 39M bytes)
pkts bytes target prot opt in out source destination
!X
出力にファイアウォールが現れるのを見て、ファイアウォールの可能性について考えましたが、tracerout
マニュアルページに「管理的に通信が許可されていません」と出ていました。上記のファイアウォールルールを見ると、traceroute
udp
パケットがチェーンREJECT
の最後の包括的なルールに達することがわかりますINPUT
。
後でデバッグするときnmap
:
axirma@the-guest:~$ nmap -Pn -T4 192.168.57.1
Starting Nmap 6.00 ( http://nmap.org ) at 2013-11-12 16:28 EET
Nmap scan report for 192.168.57.1
Host is up (0.95s latency).
All 1000 scanned ports on 192.168.57.1 are filtered
Nmap done: 1 IP address (1 host up) scanned in 35.69 seconds
スキャンされたすべてのポートがフィルタリングされることをマンページに示します。 「...ファイアウォール、フィルタ、またはその他のネットワーク障害がポートをブロックしていることを意味します。」
出力を理解した後、iptables
必要な通信を可能にするために追加のファイアウォールルールを追加する必要があることが明らかになりました。私の個人的なソリューション次の追加は次のとおりです/etc/sysconfig/iptables
。
-A INPUT -i vboxnet0 -j ACCEPT
REJECT
、チェーンが完全に囲む直前ですINPUT
。vboxnet0
VirtualBoxによって生成されたホスト専用ネットワークインターフェイス。