为啥Linux不能与其他电脑相PING通?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了为啥Linux不能与其他电脑相PING通?相关的知识,希望对你有一定的参考价值。
在unix/linux下安装配置DHCP服务大多数的情况下linux作为DHCP服务器而windows 95/98作为DHCP客户。Linux也可以作为DHCP客户,即你要安装dhcpcd rpm 软件包 ,Linux作为DHCP服务器,只需要安装dhcpd rpm 包。
一.DHCP服务器工作的前提条件:
为了使DHCP服务器为windows机器服务,你可能需要创建一个到地址255.255.255.255的路由,加这条路由命令到/etc/rc.d/rc.local使得每次启动后自动运行。
#route add -host 255.255.255.255 dev eth0
如果报告错误消息:255.255.255.255:Unkown host
试着加下面的入口到/etc/hosts文件:
#route add -host dhcp dev eth0 。
二.DHCPd后台程序总是读取配置文件/etc/dhcpd.conf, 下面给出一个DHCP配置文件的例子:
#Sample /etc/dhcpd.conf
default-lease-time 1200;
max-lease-time 9200;
option subnet-mask 255.255.255.0;
option broadcast-address 192.168.1.255;
option routers 192.168.1.254;
option domain-name-servers 192.168.1.1,192.168.1.2;
option domain-name "mydomain.org";
subnet 192.168.1.0 netmask 255.255.255.0
range 192.168.1.10 192.168.1.100;
range 192.168.1.150 192.168.1.200;
这将允许DHCP服务器分配两段地址范围给客户192.168.1.10-100或者192.168.1.150-200,如果客户不继续请求DHCP地址则1200秒后释放IP地址,否则最大允许租用的时间为9200秒。
服务器发送下面的参数给DHCP客户机:用255.255.255.0作为子网掩码,用192.168.1.255作为广播地址,用192.168.1.254作为默认网关,用192.168.1.1 and 192.168.1.2作为DNS服务器如果你要为windows客户指定一个WINS服务器,你需要包括下面的选项到dhcpd.conf文件中:option netbios-name-servers 192.168.1.1。
三.你也能为某块网卡指定固定的IP地址,无论何时,这块网卡将总是从DHCP服务器获得固定的IP地址,加下面的语句到/etc/dhcpd.conf:
host haagen
hardware ethernet 08:00:2b:4c:59:23;
fixed-address 192.168.1.222;
也可连写为一行:
host Jephe hardware ethernet 00:a0:c9:a6:96:33;fixed-address 192.168.1.12;
你也可为某台机器指定不同的网关地址,名服务器等:
host Jephe hardware ethernet 00:a0:c9:a6:96:33;fixed-address 192.168.1.12;option routers 192.168.11.5;
四. 大多数情况下,DHCP的安装不创建一个dhcpd.leases 文件,在你启动DHCP服务器之前,你必须创建空文件dhcpd.leases:
#touch /var/state/dhcp/dhcpd.leases
为启动DHCP服务器,简单地打入 /usr/sbin/dhcpd 或者用#ntsysv把DHCP服务自动启动,这将启动dhcpd在eth0设备上;如果你想在eth1设备上启动dhcpd,则#/usr/sbin/dhcpd eth1;如果为了调试DHCP,则用#/usr/sbin/dhcpd -d -f。
五.两块网卡的情况:
有时你需要在一台安装了两块网卡(作防火墙或网关)的机器上安装DHCP服务,下面的例子指出一台防火墙机器上的一种DHCP设置,因为对外的网卡(internet)不需要提供DHCP服务。
因此这样设置如下:
subnet 192.168.1.0 netmask 255.255.255.0
range 192.168.1.2 192.168.1.4;
default-lease-time 86400;
max-lease-time 259200;
option subnet-mask 255.255.255.0;
option broadcast-address 192.168.1.255;
option routers 192.168.1.254;
option domain-name-servers 192.168.1.254;
subnet 202.102.34.102 netmask 255.255.255.255
六. FAQ
a. 为MAC机器固定IP地址?
当设置MAC机用DHCP功能获得IP地址后,如不知得到何地址,可在MAC机上发送一邮件出去,收信者可通过mail header检查发送者IP地址,而后ping 该IP地址再利用arp命令检查arp缓存中的该IP地址的对应物理地址。
b. 若LAN上有windows机器装上了某DHCP功能的软件,如sygate, wingate之类,则可能其他windows客户会优先去寻找windows DHCP服务器,而不是linux DHCP服务器。
看是否对你有用? 参考技术A 从IP配置上看:
主机 192.168.190.1
255.255.255.0
虚拟机 192.168.190.40
255.255.255.0
直接选用vmnet0吧,用vmnet1(host-only)的话,配置虚拟机IP与主机IP网段有所不同。更多Linux介绍可查看《Linux就该这么学》。 参考技术B 1、检查linux的ip地址 看和其他电脑是不是同一个网段的地址 2、关闭linux的selinux3、关闭windows系统的防火墙然后在ping一下试试 参考技术C 检查linux的ip地址 看和其他电脑是不是同一个网段的地址,不行直接选用vmnet0,用vmnet1(host-only)的话,配置虚拟机IP与主机IP网段有所不同。更多Linux命令介绍可查看”Linux命令大全“
虚拟机nat方式上网,虚拟机和主机为啥不能互相ping通
虚拟机采用nat方式上网,ip为自动分配,能够上网,ping的时候能够ping通网关,也能够ping通和主机在一个局域网内的其他电脑,但是就是无法ping通本机,本机没有设置不接受ping包,在主机所在的局域网其他电脑能ping通。同时在主机上ping不同虚拟机的网关,也ping不同虚拟机。主机上的虚拟机网卡都关闭了
参考技术A 将两个虚拟机的网络选择“仅主机”后,将IP设成自动获取,然后一定要注意,检查你的主机和虚拟机的防火墙,在防火墙的高级设置里面,点击ICMP一栏的设置,在出现的列表中将第一项“允许传入回显请求”选上,然后确定。将主机和虚拟机都这样设置,然后就能相互ping通了如果还不行,请检查主机的各个网络连接,看是否有处于同一网段的,如果有,将其改在不同网段(即IP的前三项不能完全相同)即可。
以上是关于为啥Linux不能与其他电脑相PING通?的主要内容,如果未能解决你的问题,请参考以下文章
你好,关于vm建立的linux虚拟机和本机能互相ping通,但局域网其他电脑ping不通的问题