![VMWare Workstation 与 Ubuntu 10.04 服务器:DHCP 问题](https://linux22.com/image/519519/VMWare%20Workstation%20%E4%B8%8E%20Ubuntu%2010.04%20%E6%9C%8D%E5%8A%A1%E5%99%A8%EF%BC%9ADHCP%20%E9%97%AE%E9%A2%98.png)
大家好。我的 Ubuntu 10.04 服务器 (VMWare Guest) 可能存在简单的 DHCP 问题。当我sudo dhclient eth0
发送大量s 时,路由器DHCPDISCOVER
没有返回任何s。此时的 Ping 命令显示。DHCPOFFER
connect: Network is unreachable
我已经尝试过的情况分析和故障排除如下:
以前:Ubuntu 8.04 Server 运行完美,无需对软件包维护者配置进行任何修改,只需通过别名/etc/modprobe.d/aliases
禁用 IPv6 即可。
网络拓扑:VMWare Guest 使用网络桥接器共享主机的适配器。主机 (XP Pro SP3) 具有 DHCP 分配的地址(绑定到路由器配置中的 MAC 地址,虚拟机也是如此)。网络上的另一台 PC 是 Xubuntu 10.04 Desktop。其他的是 XP Pro SP3/Vista Premium SP2。这些电脑上的 DHCP 都没有问题,它们都设置为完全自动配置。所有电脑都通过同一个交换机连接到 Draytek Vigor2820n。
笔记:Xubuntu 10.04 桌面版存在 DHCP 问题,rm /etc/dhcp3/dhclient.conf
虽然 .conf 是软件包维护者的版本,但 暂时解决了该问题。但问题仍然存在,实际上,nslookup 可以工作,但 Firefox 不能。
我能操作:如果我将 VMWare 的网络适配器设置为 NAT(我们的网络是 192.168.1.*,NAT 是 192.168.0.*;我可以在两个网络上 ping 通),则在网络上 ping IP。但是,主机名不会出现在路由器配置中,如果您尝试在 Firefox 等中访问 IP,它似乎会找到某物但超时(服务器上正在运行 Apache,所以我试图访问它)。我可以访问虚拟机按主机名在这种状态下,它从主机计算机
迄今为止的故障排除步骤:
- 安装 winbind 并
/etc/nsswitch.conf
在 hosts 行中添加 wins 条目 - 在 将 中的 ipv6 列入黑名单
/etc/modprobe.d/blacklist.conf
,将 net-pf-10 别名设置为关闭,在 将 ipv6 设置为关闭/etc/modprobe.d/aliases
,在 设置net.ipv6.conf.all.disable_ipv6=1
并/etc/sysctl.conf
重新启动。(有趣的是,刚才虚拟机根本没有启动。smbd 在启动时终止,因为我已经auto eth0 inet6 dhcp
在/etc/network/interfaces
) - 配置 eth0
/etc/network/interfaces
为静态地址/网络掩码/广播/网关(类似于 NAT,这允许我通过 IP 进行 ping 操作,但它仍然不会在网络上注册其主机名。有趣的是,我可以再次访问虚拟机按主机名从其主机) - 已将 /etc/dhcp3/dhclient.conf 更改为发送主机名“ubuntu”(即计算机名称)并从 DHCP 服务器请求所有可能的内容(默认配置中包含该内容,但已被注释掉)。此后,我已删除 dhclient.conf。
- 设置名称服务器 192.168.1.1(路由器)
/etc/resolv.conf
(未正确在路由器上注册意味着我无法要求它解析 DNS 查询。我认为这纯粹是一个副作用,尽管它可能表明存在不同的问题)。
我可以在服务器或我的桌面(Xubuntu 10.04)上提供任何命令/文件的输出。dhclient(无文件)、网络/接口(auto eth0、iface eth0 inet dhcp)、resolv.conf(名称服务器 192.168.1.1)和 nsswitch(主机:文件 mdns4_minimal wins [NOTFOUND=return] dns mdns4)的当前设置是合理的,除非我们能够在 DHCP 工作后找到一种无需 WINS 即可解析主机名的方法。
输出:ifconfig
eth0 Link encap:Ethernet HWaddr <MACADDR>
inet addr:192.168.71.128 Bcast:192.168.71.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:65027 errors:0 dropped:0 overruns:0 frame:0
TX packets:19745 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:5230093 (5.2 MB) TX bytes:2854793 (2.8 MB)
Interrupt:18 Base address:0x1400
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:136 errors:0 dropped:0 overruns:0 frame:0
TX packets:136 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:12688 (12.6 KB) TX bytes:12688 (12.6 KB)
为了解释获取的 IP,我现在以“仅主机”模式运行它,这样我就可以从主机安装共享来运行需要在我们的业务中运行的进程。如果我将其设置为桥接,则输出相同,但 inet addr/bcast/netmask 除外。
输出:dhclient(v3.1.3)
Listening on LPF/eth0/<MACADDR>
Sending on LPF/eth0/<MACADDR>
Sending on Socket/fallback
DHCPDISCOVER on eth0 to 255.255.255.255 interval 5
DHCPDISCOVER on eth0 to 255.255.255.255 interval 6
DHCPDISCOVER on eth0 to 255.255.255.255 interval 12
DHCPDISCOVER on eth0 to 255.255.255.255 interval 18
DHCPDISCOVER on eth0 to 255.255.255.255 interval 10
DHCPDISCOVER on eth0 to 255.255.255.255 interval 9
DHCPDISCOVER on eth0 to 255.255.255.255 interval 1
No DHCPOFFERS received.
No working leases in persistent database - sleeping.
(我也尝试发送到 192.168.1.255,结果相同)
提前谢谢。已经花了 3 天时间,所以肯定欢迎不同的观点。
最近还在最新的 VMWare Player 上安装了全新的 Ubuntu 10.04 Server。开箱即用,问题相同。我正在设置 VirtualBox VM,这需要一段时间,因为我必须编译开源版本,所以我需要 VC++ Express。我会让人们知道进展如何。
我真笨。DHCP 问题已通过禁用主机上的防火墙。但是,解析 DNS 查询仍然存在问题。
答案1
禁用主机防火墙上的数据包过滤可使 DNS 查询正确解析。我仍然无法访问我们内联网登录页面以外的 HTTP 服务,但我想那将是另一个问题。
答案2
您的 VM 是否允许您将其名称动态注册到 DNS 服务器?我已尝试使用 10.04.01 / VM 的所有方法使其注册到我们的 DNS 服务器,但均未奏效。8.04 LTS 很好(调整 dhclient.conf 后)