帮酷LOGO
0 0 评论
  • 显示原文与译文双语对照的内容
文章标签:wai  Bridge  INI  Server  INT  STA  接口  WAIT  

问题:

目前,dhcp3-server 10.04服务器安装了,还提供了用于虚拟机的桥接接口( br0 )。 我的问题是当服务器重新引导时,由于引发桥接接口引起的额外延迟,dhcp3-server无法加载。

本质上没有用于DHCP3-server的IP地址,直到在引导周期后才能使用 DHCP3-server,因为尝试加载。

一旦服务器启动,我就可以运行'/etc/init.d/dhcp3-server 启动'没有任何问题。

有什么可以让我知道的? - 强制dhcp3-server在加载接口之前等待加载,然后尝试加载? - 在所有其他加载完毕后启动 dhcp3-server?


回答 1:

一个解决方案是告诉dhcp服务器不要自动启动,然后将以下两行添加到你的/etc/network/interfaces 文件中进行桥接定义


post-up/etc/init.d/dhcp3-server start


pre-down/etc/init.d/dhcp3-server stop



所以它最终看起来像这样


iface br0 inet static


 bridge_ports eth0 eth1


 address 192.168.1.2


 broadcast 192.168.1.255


 netmask 255.255.255.0


 gateway 192.168.1.1


 post-up/etc/init.d/dhcp3-server start


 pre-down/etc/init.d/dhcp3-server stop



这样,网络管理( ifup/ifdown,不是网络管理器) 将在启动桥后启动DHCP服务器,并在删除桥之前关闭它。


回答 2:

你可以修改 /etc/init.d/dhcp3-server 启动脚本,以等待在 br0 上提供一个IP地址。 例如:(。警告:未测试的代码)。


# wait 5 secs between br0-ready tests


wait_time_between_probes=5


# maximum number of attempts (i.e., timeout)


max_attempts=10



log_progress_msg"Waiting for br0 to get an IP address"


for n in $(seq 1 $max_attempts); do


 if/sbin/ifconfig br0 | egrep -q"inet addr:" ; then


 # IP address ready on br0, exit loop


 break


 else


 sleep $wait_time_between_probes


 fi


done


if ["$n" ="$max_attempts" ]; then


 log_warning_msg"Maximum number of attempts reached, but br0 has no IP address yet" 


 log_warning_msg"Continuing anyway but DHCP3 server might not start correctly"


fi 



代码段应该在 case.. . start) 部件的启动脚本之前,在DHCP3守护进程启动之前进入。 当然,你应该调优等待时间和尝试匹配环境的次数( br0获取IP地址的最大时间是多少)?




文章标签:INT  Server  STA  接口  bri  Bridge  INI  wai  

Copyright © 2011 HelpLib All rights reserved.    知识分享协议 京ICP备05059198号-3  |  如果智培  |  酷兔英语