路由小知识

一、

如果ping域名的时候出现ping:unknown host xxx.xxx
路由小知识
但是ping IP地址的时候可以通的话
路由小知识
可知是dns服务器没有配置好,查看一下配置文件/etc/resolv.conf,里面是否有nameserver xxx.xxx.xxx.xxx,比如使用dns服务器 nameserver 8.8.8.8,如果有,修改一个可用的dns服务器,如8.8.8.8或者114.114.114.114,保存退出即可!

当然,如果连ip都ping 8.8.8.8都ping不通的话,那么就说明网络配置有问题:可以这样解决:
1,首先查看ifconfig是否有内网ip地址,如果没有,那么配置一下
ifconfig eth0 192.168.1.100 up,
可以同时配置好掩码:
路由小知识
另外使用route命令查看一下当前的默认网关,如果没有,也配置一个,
route add default gw 192.168.1.1,
配置好这两个以后,就可以正常的ping通网络了,如果还不能ping www.baidu.com,那么就要去查看dns服务器啦
但是这种添加网关的方法只是一次性的。
重启虚拟机后又没有默认网关了。

第二种方法:
设置网关
vi /etc/sysconfig/network-scripts/ifcfg-eth0
添加
GATEWAY=192.168.1.1
然后重新启动网络服务:
service network restart
确保可用DNS解析
[[email protected] Desktop]# grep hosts /etc/nsswitch.conf
输出
hosts: files dns
该文件/etc/nsswith.conf是SUN公司开发的一种扩展name server switch。用于设置文件读取的顺序,如是先读取/etc/hosts文件,还是先查找DNS服务器。
hosts: files dns 指定先查找/etc/hosts文件,如果失败,则到DNS服务器查找与域名相对应的主机信息。
4)测试DNS
ping www.baidu.com
上面这种方法我不知道是否可以,因为我执行service network restart
会报错network: unrecognized service
且ping www.baidu.com还是不通
所以,以上两种方法我觉得都不行。

第三种方法:
编辑/etc/network/interfaces 的文件,
#gedit /etc/network/interfaces
在 auto lo
iface lo inet loopback
的后面加上:
auto eth0
iface eth0 inet static
address 192.168.1.252
netmask 255.255.255.0
gateway 192.168.1.1
broadcast 192.168.1.255
然后保存退出,重启 networking:
#/etc/init.d/networking restart

broadcast广播的意思嘛
在IP地址中,如果最后一个数字是255,则一定是一个广播地址。
可以测试将虚拟机重启,再ping www.baidu.com,依然可以ping通

建议使用第三种方法。

DNSmasq主用适用于NAT的家庭网络,用modem,cable modem,ADSL设备连接到因特网,对于那些需求低资源消耗且配置方便简单的小型网络(最多可支持1000台主机)是一个很好的选择。

1、bridge模式,网关DHCP不给客户端分配IP地址,客户端报文从WAN口出去,IP不变、MAC不变;
2、route模式,网关DHCP给客户端分配IP地址,客户端报文从WAN口出去,IP变、MAC变;
3、route模式+NAT关闭,网关DHCP给客户端分配IP地址,客户端报文从WAN口出去,IP不变、MAC变;
4,NAT只能处理IP呢,路由模式下,数据包经过NAT的规则链,NAT使能时则进行源IP转换,NAT关闭时不进行源IP转换。
5,桥接模式下,数据包压根儿就不经过NAT的规则链,类似于交换机,IP、MAC都不变。
6,NAT关闭直接切bridge模式,dhcp server还是保持打开就行了,即ip和mac都不变,dhcp正常。
7,DHCP的地址是广播,不转发