我刚刚在带有NAT的VirtualBox上安装了一个Debian9.6 VirtualBox。我不得不将网络设置从DHCP更改为静态的,并使用/30的网络掩码,因为它在我的任务中。因此,我按照以下几篇文章修改了我的/etc/network/接口,使其如下所示:
allow-hotplug enp0s3
iface enp0s3 inet static
address 10.0.0.41
netmask 255.255.255.252 // Because I have to a set a netmask of /30
gateway 10.0.0.0
broadcast 10.0.0.43
gateway 10.0.0.1
dns-nameserver 10.0.0.1 8.8.8.8
dns-domain acme.com
dns-search acme.com但是,在重新启动网络服务之后,我的名称解析一直出现临时故障,无法获取任何要安装的内容。
EDIT1:当ip a仍然在DHCP上时,我重置一切以查看原始IP和接口,D1的结果如下所示:
1: lo:
inet 127.0.0.1/8 scope host lo
2: enp0s3:
inet 10.0.2.15/24 brd 10.0.2.255 scope global enp0s3发布于 2018-12-11 12:06:58
如果您必须使用255.255.255.252 (一个/30)的网络掩码,子网中只有两个有效的IP地址。其中一个将分配给您的服务器(10.0.0.41),另一个必须是路由器,即您的默认网关。因此,您应该使用以下配置:
gateway 10.0.0.42话虽如此,您正在Virtualbox上运行此操作。Virtualbox通常使用内部/24网络。你为什么认为你必须使用/30?
由于您在VirtualBox机器上使用NAT,VM连接到内部网络(请参阅前面的注释),而VirtualBox是DHCP服务器。也许物理机器需要来自网络管理员的静态IP地址,但是在本地VirtualBox网络上的本地机器上,您可以做任何您想做的事情。
通过它的声音,你并不是真正理解网络那么好(无意冒犯)。也许有关您的设置和需求的更多信息将使我们能够更好地帮助您。
编辑:
由于您坚持使用/30网络,所以您应该在VirtualBox中创建一个网络。否则,VirtualBox将假设一个/24网络,它将为默认网关提供一个虚拟机无法访问的IP地址。有关详细信息,请查看关于虚拟网络的文档。
VBoxManage natnetwork add --netname exercise1 --network "10.0.0.40/30" --enable
VBoxManage natnetwork start --netname exercise1若要为服务添加端口转发,请使用以下命令:
VBoxManage natnetwork modify --netname exercise1 \
--port-forward-4 "ssh:tcp:[]:2222:[10.0.0.42]:22"最后,您必须修改虚拟机的设置,并将其附加到这个名为"exercise1“的新创建的网络中。在VM内部,您必须更新接口配置和/etc/ your。
https://serverfault.com/questions/943574
复制相似问题