瑞星卡卡安全论坛技术交流区系统软件 【讨论】LINUX和WINDOWS下的DHCP有什么不同?

1   1  /  1  页   跳转

【讨论】LINUX和WINDOWS下的DHCP有什么不同?

【讨论】LINUX和WINDOWS下的DHCP有什么不同?

最后编辑2005-11-17 13:37:29
分享到:
gototop
 

朕我回答你


用Linux的IP伪装功能实现局域网机器的代理上网,已有多篇文章做过介绍。本文提出的全面解决之道,是作者从网络管理员的角色进行考虑的。通过实例,详细说明了安装、调试Linux代理服务器过程中应该完成的工作和应该注意的事项。
本文所称的代理,系指透明代理(Transparent Proxy)。与Squid等软件的端口代理不同,透明代理仅用Linux内核支持的iptables或者ipchains来实现。
作为全面解决方案,需要管理员在安装好Linux系统之后,完成以下步骤:
(1)配置网卡和Internet连接(普通Modem、ISDN或者ADSL);
(2)设置iptables或者ipchains规则,实现IP伪装和防火墙;
(3)设置DHCP服务,为工作站提供动态IP地址分配;
(4)安装VNC、WebMin等软件,实现对代理服务器的远程管理;
(5)设置WWW服务,为工作站提供默认主页;
(6)修改LILO,加快启动速度。
不同版本的Linux,在安装和设置方面有着一些差别。下面以Turbo Linux 6.1 Workstation中文版(内核版本2.2.15)和中软COSIX Linux 3.0标准版(内核版本2.4.3)为例加以说明。
1. 配置网卡和Internet连接(普通Modem、ISDN或者ADSL)。
连接Internet可以有普通Modem拨号、ISDN拨号和ADSL等方式。其中,前两种方式,在各版本的Linux中,已经普遍支持,只要安装相应硬件的驱动,设置PPP拨号即可。
而ADSL虚拟拨号,只有比较新的Linux发行版本中,例如中软Linux 3.0、Red Hat 7.x,才包含的对它的支持。如果安装软件包中没有,需要在网上下载ADSL虚拟拨号软件,推荐使用RP-PPPOE,当前版本3.2,下载后按说明进行编译、安装即可。
设定用来连接Internet的设备名为ppp0,用来连接局域网的网卡设备名为eth0。如果ADSL Modem是通过网卡与主机连接的,则主机用来连接ADSL Modem的网卡设备名为eth1。为eth0手工分配IP地址192.168.0.254,为eth1手工分配IP地址192.168.1.254。设定ISP提供的DNS服务器地址。
此时,该主机应该能够上网。
2. 设置iptables或者ipchains规则,实现IP伪装和防火墙。
Ipchains是Linux的2.2版内核采用的防火墙规则设定工具,而iptables是Linux的2.4版内核采用的NetFilter防火墙规则设定工具。虽然在2.4版内核的Linux下,仍然可以使用ipchains,但是它的执行是通过调用NetFilter函数来完成的。
在Turbo Linux 6.1下,通过如下语句完成IP伪装:
insmod ip_masq_ftp
ipchains –A forward –s 192.168.0.0/24 –j MASQ
而在COSIX Linux 3.0下,则需要使用如下语句:
modprobe ip_conntrack_ftp
modprobe ip_nat_ftp
modprobe ip_vs_ftp
iptables –t nat -A POSTROUTING –s 192.168.0.0/24 –j MASQUERADE –o ppp0
可以看出,两组语句除了ipchains与iptables的异同,还分别加载了与FTP相关的模块。 为什么要加载这些模块呢?如果不加载专门用于FTP的IP伪装模块,工作站上的FTP客户端软件,就只能工作在被动模式(Passive mode)。而有些用到FTP功能的软件(包括游戏),是不允许更改工作模式的。例如,畅销的武侠游戏《金庸群侠传之决战光明顶》,运行时要先连到FTP网站获取游戏的更新文件。如果不加载FTP的IP伪装模块,这个游戏就不能运行了。
可加载的IP伪装模块还有其他类型,如IRC,可以根据需要进行加载。
IP伪装实现后,可以根据实际需要,设置其他防火墙规则。在COSIX Linux 3.0下,可以进入X-Windows,使用Lokkit工具来配置防火墙。
3. 设置DHCP服务,为工作站提供动态IP地址分配。
用代理服务器提供DHCP服务,网络设置(例如IP地址、子网掩码、网关、DNS等)改变后,就无需修改每台工作站的设置,只需在DHCP的配置文件中进行相应修改。
DHCP的配置文件名是dhcpd.conf,位于/etc目录下。一个dhcpd.conf文件的举例为:
Subnet 192.168.0.0 netmask 255.255.255.0 {
range 192.168.0.100 192.168.0.199;
default-lease-time 600;
max-lease-time 1200;
option subnet-mask 255.255.255.0;
option broadcast-address 192.168.0.255;
option routers 192.168.0.254;
option domain-name-servers 202.97.224.68, 202.97.230.4;
option domain-name “newepoch.com”;
}
其中,range规定了分配的IP地址范围,default-lease-time和max-lease-time规定IP地址的租用期限(建议调试时采用较小数值,测试正常后根据需要设定),routers提供了网关地址(代理服务器本身的IP地址),domain-name-servers规定了DNS服务器地址(此地址由ISP提供)。
有的DHCP服务器软件要求手动创建日志文件。例如,在COSIX Linux 3.0中,要执行:
touch /var/lib/dhcp/dhcpd.leases
如果服务器有多块网卡,需要在运行dhcpd的脚本中指定绑定的网卡,例如:
dhcpd eth0
需要注意的是,实验表明,如果局域网中存在Windows平台的DHCP服务器(不论是否提供服务),则Linux的DHCP服务会失效。解决的方法有二:一是确保局域网中不存在Windows下的DHCP服务器;二是将Windows下的DHCP服务器选项设成与Linux的DHCP完全相同,这样,不论工作站的IP地址等设置从哪一台DHCP服务器获得,都能够上网。
4. 安装VNC、WebMin等软件,实现对代理服务器的远程管理。
VNC是一个可以运行在Unix、Linux和Windows平台的小巧快速的远程控制免费软件,目前的版本号是3.3.3r9,包括被控端(服务器)和主控端(客户机)软件。Windows下的被控端软件叫做WinVNC,主控端软件叫做VNCViewer。该软件的网址是http://www.uk.research.att.com/vnc/。
在Turbo Linux 6.1 Workstation下,需要下载和安装VNC,运行命令是vncserver。初次运行,需要设置一个口令。
在COSIX Linux 3.0中,已经包含了VNC软件包。只需在启动时加载即可。
在Windows工作站上,有两种方式对运行vncserver的Linux服务器进行远程监控:一是Windows工作站上的VNCViewer软件,输入服务器地址、和vncserver启动序号,例如:192.168.0.254:1;二是使用Web浏览器,在地址栏中输入服务器地址和vncserver服务端口号,例如:http://192.168.0.254:5801。
COSIX Linux 3.0还提供了另一个远程管理软件WebMin,用Web浏览器的安全方式(https)进行访问。在浏览器的地址栏中输入的地址是:
https://192.168.0.254:1000
输入root口令后,就可以进行管理了。
5. 设置WWW服务,为工作站提供默认主页。
让代理服务器提供WWW服务,将工作站Web浏览器的默认主页设为该WWW服务器上的页面,内容可以是单位介绍、员工通讯录、上网须知、软件下载以及到常用网站的连接等,不但方便初学者上网,还有利于网络故障的及时发现和处理。
大部分Linux发行套件都带有WWW服务器软件Apache。只要在启动时加载即可使用,我们要做的,只是把做好的网页文件放到指定目录下。
Turbo Linux 6.1 Workstation下,Apache的默认主页目录是/home/httdpd/html;而在COSIX Linux 3.0下,默认主页目录是/var/www/html。默认的主页文件名一般是index.html。
6. 修改LILO,加快启动速度。
LILO是Linux的启动管理程序。在默认安装情况下,LILO的等待时间较长,影响了启动速度。修改/etc/lilo.conf文件,将其中的timeout=50改为timeout=5,运行/sbin/lilo,重新安装LILO。就可以大大加快机器的启动。
经过这样的设置,您的Linux机器就是一个功能强大、快速稳定的多功能代理服务器了。作者在一台P100、40M内存的586上进行这样的安装后,为本公司的十余台机器提供服务,曾经连续开机运行28天没有任何问题。当然,高版本、图形界面的Linux要求较高配置,才能充分发挥出优异的性能。
gototop
 

朕在回答你的垃圾问题````````````````



经常上网都会念道IP,那么IP是怎么来的呢?IP是什么我就不说了,但是IP总不会是你自己的吧,当然不,IP是别人给你分配的,那么分配IP的就是DHCP了。他和DNS一起组成了网络上的两个好兄弟,我们现在就来看看吧。
DHCP-Dynamic Host Configuration Protocol,动态主机配置协议。他的作用就是在网络上给你分配一个唯一的IP,让你可以和别的主机进行通信。下面我们讲windows2000的DHCP。
其实windows的DHCP的概念也是从NetWare那里学来的,但是他学的很好,并且从NT4.0系统上的静态的“DHCP”发展到了2000上的动态的DHCP,还借此一举打败了后者,几乎是统一了局域网的IP规则。可以说是windows的又一个经典传奇。
现在我在一个局域网内,我要连接上局域网,就要向DHCP服务器申请一个IP,这个过程叫做DHCP租约的生成。他的大概过程如下:
1.请求IP租约。
客户机启动租约过程,以0.0.0.0为源地址,255.255.255.255为目标地址广播一个DHCPDISCOVER消息,其中还包括了MAC地址,NETBIOS名。
2.提供IP租约。
DHCP服务器回答一个DHCPOFFER消息,包含客户机MAC地址,IP,subnet mask,租约期限长度,服务器标识符。
3.选择IP租约。
在接到第一个offer之后,客户机广播一个DHCPREQUEST消息,包含该服务器的身份标识,其他的DHCP服务器就收回他的提供并保留给其他的IP请求。
4.确认IP租约。
提供IP的这台服务器广播一个DHCPACK消息,包含一个针对此IP的合法租约和配置信息,客户机接收到后就按照此信息进行初始化。
以上通讯过程全部通过UDP端口67、68进行。

而租约也不是给了你就永远是你的了,租约也是有限的,使用到了一定时候就需要更新,这就叫DHCP租约的更新,他的大概过程如下:
客户机在他们的租约已经过去一半时就尝试更新他们的租约。
客户机向服务器发送一个DHCPREQUEST请求更新租约,如可用DHCP服务器就返回一个DHCPACK消息,否则客户机继续使用当前租约。在租约用去87.5%时再尝试更新。

默认情况下,一个租约的持续时候为8天,但是由于我们不可能有那么多的IP来闲置着,所以在你下线以后你的租约也就没有用了,你的IP别人也就拿去用了,所以当你再次登录的时候就需要再向服务器申请IP。
另外,我们还可以手动更新租约,方法是:使用ipconfig /release 来释放租约再使用ipconfig /renew命令向服务器发送DHCPREQUEST消息,更新配置选项和租约时间。

说了这么多条条款款的,不要被他吓着了,没什么好怕的,下面我们就按照DHCP服务器的安装顺序来认识一下DHCP服务器的配置,很好玩的。
那么首先我们需要一些准备。我们需要一台可以用的DNS,我之前已经讲过了;还需要一个域名,还拿那个abc.com吧。由于DHCP不一定非得是DC(域控制器),也就无所谓了。下面开始。
1. 先在控制面板上点击的添加删除程序,再在左边点击添加删除windows组件,选择网络服务-》详细内容-》DHCP,确定。安装一个DHCP协议,安装以后就会在管理工具里面出现一个DHCP管理器。打开他,开始创建一个DHCP服务器。单击操作-》添加服务器,出现一个指定DHCP服务器的对话框,单击浏览,添加,出现授权DHCP服务器对话框,填入你要创建的DHCP服务器的IP,这个IP是提前在DNS上添加的固定IP,然后选择这台服务器,单击管理直至完成。这样就创建了一个DHCP服务器了,简单吧。别笑,这个东西现在还不能用,还有了。
2. 单击创建好的这台DHCP服务器,点击操作-》新建-》作用域。作用域是DHCP的基本单位,DHCP就是管理他的作用域范围内的主机,给他们分配IP地址。这就好比是分班一样,给你们划一个圈圈,你是他管的我就不管了。然后依次填入作用域名,IP地址的范围,子网掩码等,接下来就是排除IP了,你可以在这里填入局域网内的需要固定IP的DC,DNS,FTP等服务器的IP,这样DHCP就不会把他们的IP拿去分配给客户,就可以保证他们可以被访问到。然后会要求你填入域名称,这里就是给我们的作用域起一个总的名字了,就填我们准备好的abc.com,下面填入DNS和WINS,如果没有WINS服务器可以不填,但DNS是必须的。最后激活作用域,看到右边显示其状态为运行中就OK了。
3. 长舒一口气吧,累死了,呵呵,我告诉你现在的DHCP服务器其实还不可以用。还有一步了,这是很关键的,就是选择这台服务器,右击,选择授权服务器。只有授权的服务器才可以在局域网内发放被认可的IP,当然没有授权的也是可以发放的,但这种IP你拿到也没有用。所以没有这一步,之前的一切都没有意义。

好了,写了这么多了,如果你到现在为止都还没有看懂,那只能说明我没有写好,因为我发现写这种文章实在不是我的长项!^_^什么时候看贴点图出来可能会好点,可我现在实在是没有,大家就先将就点吧。我也是凭记忆写的。

接下来再讲点理论,还是作用域。
作用域中还有一些比较特殊的类型,如:
超级作用域,就是把几个作用域联合在一起组成一个大的作用域,可以从多个逻辑子网为单个物理子网上的DHCP客户机分配IP地址。
多点传送作用域:经过的所以路由器必须被配置成识别多点传送地址,需要MADCAP协议。多用于视频会议等。多点传送地址范围必须在有效的224.0.0.0-239.255.255.255之间。

还有就是路由式网络中的DHCP中继代理。因为路由器是划分子网的,它的作用就是阻止数据在子网之间广播,而DHCP是一种广播式的服务,两者互相矛盾就需要DHCP中继代理来转发IP。DHCP中继代理是在路由合远程访问服务下的添加路由协议中添加一个DHCP中继代理协议再进行一些必要的配置就可以了。这里就不讲了。

最后是一些DHCP的维护常识。
1.DHCP数据库文件DHCP.mdb和日志文件都存放在DHCP数据库目录systemroot\system32\dhcp中。备份文件存放于systemroot\system32\dhcp\jet\new。
2.jetpack修复程序。停止DHCP服务,在命令提示符下进入systemroot\system32\dhcp目录,运行jetpack dhcp.mdb temp命令可以修复一些DHCP的问题。
3.删除DHCP服务器。
要从服务器中删除DHCP作用域或是从服务中删除DHCP服务器应采取一下步骤:
1.缩短客户机租约的持续时间
2.为客户机新建租约
3.记录下任何保留地址
4.在新的DHCP服务器上要有足够大的地址库
5.将IP地址传输到新的作用域。

gototop
 
1   1  /  1  页   跳转
页面顶部
Powered by Discuz!NT