在我当时接触Linux的时候,第一件事就是先让自己的电脑连上网,但就是这么简单的事情当时却困扰了我很长时间,各种脑残手残的事情都出现过,呵呵。但是这个对于新手却十分的头疼,为什么我的电脑连不上网,为什么我ping的通别人但就是无法上网。这些问题我们来一个一个解决。
这个部分我们了解三个主题:
1.网络配置文件
2.基本的故障排除错误
3.网络故障排除工具包
1.了解网络配置文件
网络接口名称
根据接口的类型,linux内核会使用特定的前缀命名接口。例如,无论硬件的供应商是哪家,全部的以太网接口都是以eth开头的。在前缀后面的是编号。呵呵,是不是有点熟悉啊。用ifconfig命令可以查看我们的网卡信息。例如eth0、eth1分别是指第一个和第二个以太网接口。一般还会有其他几种,第一无线设备wlan0、为虚拟机设置的内部网桥virbr0、第一绑定网络设备bond0等等。
网络接口配置
/sbin/bin 用于显示或临时修改设备、路由、策略路由和隧道。
主机名解析(hostname)
stub解析器用于将主机名转换为ip地址,两者可以相互转换。
主机名和ip之间的映射在/etc/hosts下
如果/etc/hosts没有该映射关系的话,那么stub解析器将会在DNS服务器上查找,关于DNS的服务器设置文件在/etc/resolv.conf中。这个可以更改用来指定其他的DNS服务器。
/etc/sysconfig/network用于指定主机名并可以指定默认路由
关于网络配置文件有一个不得不提:/etc/sysconfig/network-scripts/ifcfg-eh0
在图中我们的配置显得很简单,但是这些就足够了:
DEVICE 为设备名,eth0与外边的ifcfg-eth0是相吻合的;
BOOTPROTO 这里我们使用dhcp而不是static或者none,开启网络服务后IPADDR和DNS、网关等都会为我们自动申请好,但是有一 点要注意的是,所处的网络环境一定要有dncp服务器,要不会产生失败的。如果要静态的设置,把值改为static或者none。然后IPADDR、GATEWAY、DNS1、NETMASK都最好也设置的和当前的环境匹配。我是为了方便设置成dhcp,但是每到一个新的环境都需要重启网络服务,重新获得上述的几个信息。
ONBOOT 这个是决定我们的网路服务是否在开机时开启
BRIDGE 这个东西绝对是值得去设定的,他是我们真机和虚拟机来通信的桥梁,就是为了桥接所设定的一个参数。
好了当我们的eth0设置好之后,在同一个目录下我们需要书写ifcfg-br0,这个是为了和虚拟机桥接设定的,需要自己编写,内容如下:
和之前的ifcfg-eth0比较相近,也拥有DEVICE、ONBOOT、BOOTPROTO,但是有个类型选项TYPE,大家要注意这个Bridge开头要大写,否额失效。
设置好这两个文件之后,重新开启网络服务。
查看我们网卡信息:
可以看到我们有了br0设备,如果在RedHat系统中选中虚拟机和真机的链接方式为桥接的话,然后配置好虚拟机的ifcfg-eth0文件,那么虚拟机也就可以上网了。妥妥的。就是那个选项。