WEB开发网
开发学院操作系统CentOS CentOS下的网络配置文件篇 阅读

CentOS下的网络配置文件篇

 2010-07-19 08:13:33 来源:WEB开发网   
核心提示:无论是通过网络配置命令(下文将提到)来配置网络,还是通过图形化的配置界面,CentOS下的网络配置文件篇,最终的配置信息都将写入到某某的文件中,也就是说一旦我们知道了这些信息都写到了什么文件中或哪儿个文件中,文件路径:C:\WINDOWS\system32\drivers\etc\hosts,在这个文件中添加你要访问的

无论是通过网络配置命令(下文将提到)来配置网络,还是通过图形化的配置界面,最终的配置信息都将写入到某某的文件中,也就是说一旦我们知道了这些信息都写到了什么文件中或哪儿个文件中,我们就可以通过直接的修改某某文件来直接进行配置,下面就说明一下网络设置将要涉及到的几个主要的文件。不光是CentOS,其他的UNIX系的OS都可以通过这个方法来配置网络,不过系统的不同定义也不同,比如说有些系统会说到通过直接修改文件的方法配置网络信息会导致网络环境的不稳定,提倡使用图形界面或配置命令的形式来配置网络,这里要特别的注意。

(1)文件 /etc/sysconfig/network

这个/etc/sysconfig/network文件是定义hostname和是否利用网络的不接触网络设备的对系统全体定义的文件。

设定形式:设定值=值

/etc/sysconfig/network的设定项目如下:

NETWORKING    是否利用网络

GATEWAY     默认网关

IPGATEWAYDEV   默认网关的接口名

HOSTNAME     主机名

DOMAIN      域名

(2)文件 /etc/sysconfig/network-scripts/ifcfg-eth0

/etc/sysconfig/network-scripts在这个目录下面,存放的是网络接口(网卡)的制御脚本文件(控制文件),ifcfg- eth0是默认的第一个网络接口,如果机器中有多个网络接口,那么名字就将依此类推ifcfg-eth1,ifcfg-eth2,ifcfg- eth3......(这里面的文件是相当重要的,涉及到网络能否正常工作)
设定形式:设定值=值
设定项目项目如下:

DEVICE     接口名(设备,网卡)
BOOTPROTO   IP的配置方法(static:固定IP, dhcpHCP, none:手动)
HWADDR       MAC地址
ONBOOT     系统启动的时候网络接口是否有效(yes/no)
TYPE      网络类型(通常是Ethemet)
NETMASK     网络掩码
IPADDR     IP地址
IPV6INIT    IPV6是否有效(yes/no)
GATEWAY     默认网关IP地址

这里有一个例子:(我自己的,上图HostB)

代码:

[root@linux ~]# cat -n /etc/sysconfig/network-scripts/ifcfg-eth0
  1 DEVICE=eth0
  2 BOOTPROTO=static
  3 BROADCAST=192.168.1.255
  4 HWADDR=00:0C:2x:6x:0x:xx
  5 IPADDR=192.168.1.23
  6 NETMASK=255.255.255.0
  7 NETWORK=192.168.1.0
  8 ONBOOT=yes
  9 TYPE=Ethernet

3)文件 /etc/resolv.conf
这个文件是用来配置主机将用的DNS服务器信息。在这个文件中如果不设置DNS服务器的IP地址,那么在通信的时候,将无法指定像 www.centospub.com这样的域名。(DNS是Domain Name
System的简称,中文名称域名解析服务器,主要是IP和域名转换功能)/etc/resolv.conf的设定项目:
domain ←定义本地域名
search ←定义域名和搜索列表
nameserver←定义被参照的DNS服务器的IP地址(最多可指定3个)
一般来说最重要的是第三个nameserver项目,没有这项定义,用域名将无法访问网站,并且yum等服务将无法利用

(4)文件 /etc/hosts

/etc/hosts这个文件是记载LAN内接续的各主机的对应[HostName和IP]用的。在LAN内,我们各个主机间访问通信的时候,用的是内网的IP地址进行访问(例:192.168.1.22,192.168.1.23),从而确立连接进行通信。除了通过访问IP来确立通信访问之外,我们还可以通过HostName进行访问,我们在安装机器的时候都会给机器起一个名字,这个名字就是这台机器的HostName,通过上图可以看到,HostA的 hostname是centos1,HostB的hostname是centos2那我们怎么能不但通过IP确立连接,通过这个IP对应的 HostName进行连接访问呢?解决的办法就是这个/etc/hosts这个文件,通过把LAN内的各主机的IP地址和HostName的一一对应写入这个文件的时候,就可以解决问题。

比如说上图,我要在HostA上用ssh访问HostB的时候,在命令行下我做这样的操作:

代码:


[root@centos1 ~]# ssh 192.168.1.23
root@192.168.1.23's password:
Last login: Mon Dec 25 15:04:58 2006 from centos1
[root@centos2 ~]

访问成功后,我们看到hostname的地方变化了。
那么我们用hostname试试看:

代码:

[root@centos1 ~]# ssh centos2
ssh:centos2: Name or service not known ←提示错误,不知道主机
[root@centos1 ~]

那么我们编辑/etc/hosts文件,将HostB的IP和hostname的对应关系写入这个文件,如果主机有域名,可以将域名写在IP地址之后hostname之前,并且用空格隔开,形式如第三行127.0.0.1的设置。

代码:

[root@centos1 ~]# cat -n /etc/hosts
  1 # Do not remove the following line, or various programs
  2 # that require network functionality will fail.
  3 127.0.0.1 localhost.localdomain localhost
  4 192.168.1.23 centos2

然后我们再从复#ssh centos2的操作

代码:

[root@centos1 ~]# ssh centos2
root@centos2's password:
Last login: Mon Dec 25 15:05:07 2006 from centos1

可以看到访问成功了,这个文件就是这样的,倘若你要用windowsXP访问局域网中的linux你也可以用上面的方法,只不过在 windowsXP下面你也要修改hosts这个文件,文件路径:C:\WINDOWS\system32\drivers\etc\hosts,在这个文件中添加你要访问的局域网中的主机的IP和hostname,就能通过主机名访问主机了。

Tags:CentOS 网络 配置

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接