网络接口(interface)是网络硬件设备在操作系统中的表示方法,比如网卡在Linux操作系统中用ethX,是由0开始的正整数,比如eth0、eth1...... ethX。而普通猫和ADSL的接口是 pppX,比如ppp0等;

机器中所有可用网卡及名字: 
参考:linux网络配置相关命令、虚拟网络接口eth0:0

网关GateWay配置地址: 
/etc/sysconfig/network  GATEWAY=192.168.1.250 
/etc/sysconfig/network-scripts/ifcfg-eth0 GATEWAY=192.168.1.250

DNS配置地址: 
/etc/resolv.conf 
一般DHCP方式获得Ip地址时,网关、路由、Ip地址等信息都不需要手动设置!

网络配置相关文件:

  • /etc/sysconfig/network-scripts/ifcfg-ethX : Configuration file for network interfaces 网络接口(网卡)的配置文件(配置IP,掩码,广播地址,MAC地址,网关地址,DHCP等) 如果增加了一块网卡,那么可以手动把ifcfg-eth0复制一份并命名为ifcfg-eth1,修改配置后,重启网络即可
  • /etc/sysconfig/network 网络基础设置文件(配置主机名、网络是否可用等)
  • /etc/resolv.conf        配置DNS域名解析服务器
  • /etc/networks 网络定义文件:显示已知的网络名信息(一般默认不需要修改)
  • /etc/hosts              配置IP地址和主机名的映射(一般默认不需要修改)
  • /etc/services           网络服务列表及服务和端口号之间的映射(一般默认不需要修改)
  • /etc/host.conf          配置域名查找顺序1(一般默认不需要修改)
  • /etc/nsswitch.conf      配置域名查找顺序2(一般默认不需要修改)

这些文件都可以在系统运行时进行修改,不用启动或者停止任何守护程序,更改会立刻生效(除了/etc/sysconfig/network 和 /etc/sysconfig/network-scripts/ifcfg-ethX)。另外,这些文件都支持由"#"开头的注释,每一个文件都有在Linux帮助手册页中的第5部分中有一项,可以用man命令来获取它们。

/etc/sysconfig/network-scripts/ifcfg-ethX : 网络接口(网卡)的配置文件(配置IP,掩码,广播地址,MAC地址,网关地址,DHCP等),修改后需要重启网络。 
配置DHCP: 
DEVICE=eth0 
BOOTPROTO=dhcp 
ONBOOT=yes(dhcp的配置方法就是这么简单)

配置静态地址: 
DEVICE=eth0 
BOOTPROTO=static(或者是none) 
IPADDR=192.168.0.1 
NETMASK=255.255.255.0 
GATEWAY=192.168.0.254 
ONBOOT=yes

参数解释: 
完整的参数说明参考:Linux Certif - Man ifcfg(5)

  • DEVICE=eth0#网卡设备名称 - 必须字段
  • BOOTPROTO=static#系统获取IP的协议类型 dhcp bootp none - 必须字段
  • ONBOOT=yes#启动时是否激活 yes | no - 必须字段
  • IPADDR=192.168.1.90#网络IP地址 - static静态IP时必须
  • NETMASK=255.255.255.0#网络子网掩码地址 - static静态IP时必须
  • TYPE=Ethernet#网卡类型为以太网
  • HWADDR=00:0C:29:FE:1A:09#网卡MAC地址
  • BROADCAST=192.168.1.255#广播地址 - 根据Ip地址和子网掩码地址可以计算得到
  • GATEWAY=192.168.1.1#网关地址
  • USERCTL=answer, 非root用户是否可以控制该设备: yes 是 | no 否

/etc/sysconfig/network 网络基础设置文件(配置主机名、网络是否可用等) 
该文件用来指定服务器上的网络配置信息,包含了控制网络是否可用、主机名等信息。下面是一个例子文件:

  1. NETWORKING=yes
  2. HOSTNAME=machine1
  3. GATEWAY=210.34.6.2
  4. FORWARD_IPV4=yes
  5. GATEWAYDEV=
  • NETWORK=yes/no 表示网络是否被配置;
  • HOSTNAME=hostname hostname 表示服务器的主机名;
  • GATEWAY=gw-ip gw-ip 表示网络网关的IP地址;
  • FORWARD_IPV4=yes/no 是否开启IP转发功能;
  • GAREWAYDEV=gw-dev gw-dw 表示网关的设备名,如:eth0等;

/etc/resolv.conf 配置DNS域名解析服务器 
文件/etc/resolv.conf配置DNS域名解析服务器,它包含了主机的域名搜索顺序和DNS服务器的地址,每一行应包含一个关键字和一个或多个的由空格隔开的参数。下面是一个例子文件:

  1. search mydom.edu.cn
  2. nameserver 210.34.0.14
  3. nameserver 210.34.0.2

合法的参数及其意义如下:

  • nameserver 表明DNS服务器的IP地址。可以有很多行的nameserver,每一个带一个I P地址。在查询时就按nameserver在本文件中的顺序进行,且只有当第一个nameserver没有反应时才查询下面的nameserver.
  • domain 声明主机的域名。很多程序用到它,如邮件系统;当为没有域名的主机进行DNS查询时,也要用到。如果没有域名,主机名将被使用,删除所有在第一个点( . )前面的内容。
  • search 它的多个参数指明域名查询顺序。当要查询没有域名的主机,主机将在由search声明的域中分别查找。domain和search不能共存;如果同时存在,后面出现的将会被使用。
  • sortlist 允许将得到域名结果进行特定的排序。它的参数为网络/掩码对,允许任意的排列顺序。Red Hat中没有提供缺省的/etc/resolv.conf文件,它的内容是根据在安装时给出的选项动态创建的。

/etc/networks 网络定义文件:显示已知的网络名信息 
该文件是一个用来描述已知DARPA网络和名称的纯文本文件。每一行代表一个network

/etc/hosts 配置IP地址和主机名的映射 
/etc/hosts中包含了IP地址和主机名之间的映射,格式:IP地址 标准主机名 [ 多个可选别名]。下面是一个例子文件:

  1. 127.0.0.1 localhost localhost.localdomain machine1
  2. 192.168.1.100 machine7
  3. 192.168.1.101 otherpc otheralias

/etc/services:网络服务列表及服务和端口号之间的映射 
/etc/services中包含了所有的网络服务名和端口号之间的映射,不少的系统程序要使用这个文件。linux系统端口分类:通用端口:0-1023 可注册端口:1024-49151 动态或者私有端口:49152-65535。下面是RedHat 安装时缺省的/etc/services中的前几行:

  1. tcpmux 1/tcp # TCP port service multiplexer
  2. echo 7/tcp
  3. echo 7/udp
  4. discard 9/tcp sink null
  5. discard 9/udp sink null
  6. systat 11/tcp users

最左边一列是网络服务名,中间一列是端口号,”/“ 后面是端口类型,可以是TCP也可以是UDP。任何后面的列都是前面服务的别名。在这个文件中也存在着别名,它们出现在端口号后面,在上述例子中sink和null 都是discard服务的别名。

/etc/host.conf 配置域名查找顺序1 
有两个文件声明系统到哪里寻找名字信息来配置UNIX名字解析器的库。文件/etc/host.conf由版本5的libc库所使用,而/etc/nsswitch.conf由版本6使用(glibc )。问题在于一些程序使用其中一个,而一些使用另一个,所以将两个文件都配置正确是必要的。 
/etc/host.conf文件指定如何解析主机名,linux通过解析器库来获得主机名对应的IP地址。下面是RedHat安装后缺省的"/etc/host.conf"内容:

  1. order hosts,bind
  2. multi on
  • "order " 指定主机名查询顺序,其参数为用逗号隔开的查找方法,支持的查找方法为bind、hosts和nis,分别代表DNS、/etc/hosts和NIS,这里规定先查询"/etc/hosts"文件然后再使用DNS来解析域名。
  • "trim" 表明当通过DNS进行地址到主机名的转换时,域名将从主机名中被裁剪掉,trim可以被多个域包含多次,对/etc/hosts和NIS查询方法不起作用,注意在/etc/hosts和NIS表中主机名是被适当地(有或没有全域名)列出的。
  • "multi" 指定是否"/etc/hosts"文件中指定的主机可以有多个地址,值为on表示允许,拥有多个IP地址的主机一般称为具有多个网络界面。
  • "nospoof " 指是否允许对该服务器进行IP地址欺骗,值为on表示不允许,IP欺骗是一种攻击系统安全的手段,通过把IP地址伪装成别的计算机,来取得其它计算机的信任。
  • "alert" 当nospoof指令为on时,alert控制欺骗的企图是否用syslog工具进行记录,值为on表示使用,缺省值为off。
  • "rccorder" 如果被设置为on,所有的查询将被重新排序,所以在同一子网中的主机将首选被返回,缺省值为off。

/etc/nsswitch.conf 配置域名查找顺序2 
/etc/nsswitch.conf文件是由Sun公司开发并用于管理系统中多个配置文件查找的顺序,它比/etc/host.conf文件提供了更多的功能。/etc/nsswitch.conf中的每一行或者是注释(以#号开头)或者是一个关键字后跟冒号和一系列要试用的有顺序的方法。每一个关键字是在/etc/目录可以被/etc/nsswitch.conf控制的/etc文件的名字。下面是可以被包含的关键字:

  • aliases 邮件别名;
  • passwd 系统用户;
  • group 用户组;
  • shadow 隐蔽口令;
  • hosts 主机名和I P地址;
  • networks 网络名和号;
  • protocols 网络协议;
  • services 端口号和服务名称;
  • ethers 以太网号;
  • rpc 远程进程调用的名称和号
  • netgroup 网内组

下面也是可以包含的关键字:

    • files 除了netgroup,对其他关键字都有效。在相应的/etc文件中寻找记录
    • db 除了netgroup,对其他关键字都有效。在相应的/var/db数据库中寻找记录。对长文件很有效,如passwd文件已经 超过500项。要从标准/etc文件中产生这些文件,应改变目录到/var/db并运行run命令
    • compat 兼容性模式,对passwd、group和shadow文件有效。在本模式中,将先在对应的/etc文件中查找。如果想进行NIS查找,需要第一个值(用 户名或组名)为加号( + ),后面跟对应数量的冒号( : ) ( /etc/passwd为6个, /etc/group为3个, /etc/shadow为8个)。如在/etc/passwd文件中,下面一行应被包含在文件尾: + : * : : : : :
    • dns 只对hosts有意义。像在/etc/resolvconf配置的,在DNS中进行查找
    • nis 对所有的关键字都有意义。如NIS是可以用的,在NIS服务器中查找
    • [ STATUS = action ] 控制名字服务的行为。STATUS是SUCCESS(操作被成功执行)、NOTFOUND (记录没找到)、UNAVAIL (所选择的服务不可用)和TRYAGAIN (服务暂时不可用,请重试)中的一个。action是return (终止查找并返回当前状态)或continue (继续这一行的其他项)中的一个。如hosts: dns nis [NOTFOUND=return] files将会首先在DNS中,然后在NIS中查找主机名。只有当前两项都不可用时才使用文件/etc/hosts

linux网络配置相关文件的更多相关文章

  1. linux网络配置相关命令、虚拟网络接口eth0:0

    网络接口(interface)是网络硬件设备在操作系统中的表示方法,比如网卡在Linux操作系统中用ethX,是由0开始的正整数,比如eth0.eth1...... ethX.而普通猫和ADSL的接口 ...

  2. Linux网络配置、文件及命令

    Linux的网络配置是曾一直是我学习Linux的埋骨之地,投入了大量的精力和心神但是自己的虚拟机就是联不了网.原来一个大意,我一躺就是一年半.在这里简单的谈谈我对网络的微微认识. VMware的联网模 ...

  3. Linux网络配置相关

    路由相关 #添加到主机的路由 route add -host 192.168.1.2 dev eth0 route add -host 192.168.1.2 gw 192.168.1.1 注1:添加 ...

  4. linux网络配置详解

    一:相关网络配置的文件 1.网卡名配置相关文件 网卡名命名规则文件: /etc/udev/rules.d/70-persistent-net.rules # PCI device 0x8086:0x1 ...

  5. Linux网络——配置防火墙的相关命令

    Linux网络——配置防火墙的相关命令 摘要:本文主要学习了如何在Linux系统中配置防火墙. iptables命令 iptables准确来讲并不是防火墙,真正的防火墙是运行于系统内核中的netfil ...

  6. 尚学linux课程---4、linux网络配置及linux文件

    尚学linux课程---4.linux网络配置及linux文件 一.总结 一句话总结: linux下的etc目录是配置文件的目录,所以很多的文件配置操作都可以看到它的身影:比如 init系列命名,比如 ...

  7. linux网络配置完全解析

    概述:熟悉了windows下面的网络配置,对linux下的网络配置缺未必了解透彻.熟练掌握linux下的网络配置原理,能帮助我们更容易掌握网络传输原理:同时具备一些网络连接不通对应问题的排查能力.文本 ...

  8. 【Linux】Vmware&Linux 网络配置

    Vmware 网络设置 Linux 网络设置 注:本实验使用Linux 版本为 RedHat 6.3 Vmware 网络设置 1.Vmware 网络工作模式 bridged(桥接模式) -- 网络能提 ...

  9. linux入门基础——linux网络配置

    linux网络配置 以太网连接 在linux中,以太网接口被命名为:eth0.eth1等.0.1代表网卡编号 通过lspci命令能够查看网卡硬件信息(假设是usb网卡,则须要使用lsusb命令) 命令 ...

随机推荐

  1. 微软在线测试题String reorder

    问题描述: Time Limit: 10000msCase Time Limit: 1000msMemory Limit: 256MB DescriptionFor this question, yo ...

  2. Python 2 到 Python 3的变化

    Python 2.x到Python 3.x变化还是挺大的,具体的变化,参考官方文档: https://docs.python.org/3.0/whatsnew/3.0.html

  3. RequireJS进阶(一)

    为了应对日益复杂,大规模的JavaScript开发.我们化整为零,化繁为简.将复杂的逻辑划分一个个小单元,各个击破.这时一个项目可能会有几十个甚至上百个JS文件,每个文件为一个模块单元.如果上线时都是 ...

  4. 【MySQL】关于MySQL错误日志信息的收集

    为方便维护MySQL,写了个脚本用以提供收集错误信息的接口.这些错误信息来自与MySQL错误日志,而 通过grep mysql可以获取error-log的路径. #!/usr/bin/env pyth ...

  5. XMPP通讯开发-好友获取界面设计

    在XMPP通讯开发-服务器连接 中我们成功连接到服务器上面,然后进入到主界面,接下来就是获取好友列表,这里我们分段开发,首先就是界面的设计,这里仿照QQ好友界面,里面的数据先是用模拟的,下一章获取服务 ...

  6. 【JavaScript】轻易改变的背景和字体颜色页面

    JavaScript,点击button改变页面背景和字体颜色,网页有N颜色的变化button.点击不同button,网页字体和背景将被改变为不同的颜色. 非常easy的JavaScript小程序. 一 ...

  7. 常用分组函数count-avg-sum-max-min

    分组函数也称多行函数,用于对一组数据进行运算,针对一组数据(取自于多行记录的相同字段)只返回一个结果,例如计算公司全体员工的工资总和.最高工资.最低工资.各部门的员工平均工资(按部门分组)等.由于分组 ...

  8. pd的django To do list教程-----(2)models模型的建立

    1:在models.py中建表 from django.db import models class Tcontent(models.Model): content = models.CharFiel ...

  9. (转)检测到在集成的托管管道模式下不适用的ASP.NET设置的解决方法(转)

    我们将ASP.NET程序从IIS6移植到IIS7,可能运行提示以下错误: HTTP 错误 500.23 - Internal Server Error 检测到在集成的托管管道模式下不适用的 ASP.N ...

  10. (转).NET平台开源JSON库LitJSON的使用方法

    一个简单示例: String str = "{’name’:’cyf’,’id’:10,’items’:[{’itemid’:1001,’itemname’:’hello’},{’itemi ...