为什么 dhclient 仅在 /etc/rc.conf 中未指定时才起作用

为什么 dhclient 仅在 /etc/rc.conf 中未指定时才起作用

我刚刚在虚拟机中设置了 FreeBSD 8.1,并尝试让它自动执行 DHCP。现在,如果我/etc/rc.conf像这样离开:

#ifconfig_de0="DHCP"

然后我就可以这样做dhclient de0,它会立即获得一个 IP。

如果我删除注释,那么 DHCP 应该是自动的,然后dhclient de0就永远不会获得地址(并且它也不会自动发生)

我明白了DHCPREQUEST on de0 to 255.255.255.255 port 67

其他都没有什么变化,我做错了什么?

我也尝试过使用 sysinstall,但是我发现没有办法让它将我所做的更改写入文件.....

====编辑

希望能节省别人在这上面所花的时间,这是我的 rc.conf:

# -- sysinstall generated deltas -- # Mon Dec  6 11:51:13 2010
# -- sysinstall generated deltas -- # Wed Dec  8 08:28:27 2010
# Created: Mon Dec  6 11:51:13 2010
# Enable network daemons for user convenience.
# Please make all changes to this file, not to /etc/defaults/rc.conf.
# This file now contains just the overrides from /etc/defaults/rc.conf.
#REMOVED: inetd_enable="YES"
hostname="pfsensedev.intomec.com"
#ifconfig_de0="DHCP"
inetd_enable="NO"
sshd_enable="YES"

我发现如果我想获得分配的 IP 地址,就必须注释掉 ifconfig_de0 行。如果我把它留在 rc.conf 中,就不可能通过 dhclient 获取 IP 地址。

把这些行放入 /etc/rc.local 就可以了

dhclient de0

我在 Win7x64 下的 MS Virtual PC VM 上运行它(已经为 XP 模式加载)。

谢谢大家的帮助。

答案1

你做得对。如果你的情况不行,你也可以使用/etc/rc.local。将命令dhclient de0放入此文件中,它将在系统启动时运行。

相关内容