网络基础之配置文件

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了网络基础之配置文件相关的知识,希望对你有一定的参考价值。

为了能够持久化保存网络参数的配置结果,我们需要将有意义的参数写入到配置文件中;
    1./etc/sysconfig/network-scripts/ifcfg-IF_NAME
        在CentOS6中:跟IP、MASK、GATAWAY、DNS相关的配置文件;
        DEVICE=eth0
            此网络接口的名称;
        TYPE=Ethernet
            此网络接口的网络类型,比较常见的是:Ethernet,Bridge,Token Ring,...
        UUID=6cc62bc7-77a6-4355-b132-d7fb1633bb10
        ONBOOT=yes
            在操作系统引导启动的过程中,是否自动激活此网络接口;
        NM_CONTROLLED=yes
            是否受到Network_Manger组件的管理控制;
        BOOTPROTO=none
            在激活此网络接口时,使用何种协议来配置此接口的IP地址等属性;
                手动指定,静态配置:static,none
                自动获取,动态配置:dhcp                
        IPADDR=172.16.1.2
            如果BOOTPROTO配置指令的值如果为静态配置,则此指令为当前网络接口配置静态IP地址;
            如果BOOTPROTO配置指令的值为动态配置,即便定义了此指令,也不生效;
        PREFIX=16
            通过指定网络位长度而指定子网掩码;
            或者这样写:NETMASK=255.255.0.0,直接指定子网掩码;
        DEFROUTE=yes
        IPV4_FAILURE_FATAL=yes
        IPV6INIT=no
            是否在此网络接口上初始化IPv6协议;
        NAME="System eth0"
        HWADDR=00:0C:29:08:F2:9C
            此网络接口设备的物理地址,在以太网中即为MAC地址;
        LAST_CONNECT=1509983762
        NETBOOT=yes
            当前网络接口是否支持网络引导启动;
        USERCTL=no
            是否允许普通用户管理此网络接口;推荐取值为NO;
        GETEWAY=172.16.0.1
            设置默认网关;
        DNS1=x.x.x.x
        DNS2=y.y.y.y
        DNS3=x.x.x.x
            定义首选DNS服务器,备用DNS服务器,第三DNS服务器地址;
        PEERDNS=no:
            是否允许把从DHCP服务器获取到的DNS服务器地址覆盖存储到/etc/resolv.conf文件中;默认值为允许;


        注意:在CentOS 6中,我们不建议使用Network-Manager来管理网络接口;因此建议在CentOS 6中将NM服务彻底关闭,使用下列命令即可:
            ~ ]# service NetworkManger stop
            ~ ]# chkconfig NetworkManger off

2.主机名的配置文件:/etc/sysconfig/network
        CentOS 6中:
            NETWORKING=yes
            HOSTNAME=localhost.localdomain

        设置主机名的命令:
            hostname:
                hostname - show or set the system’s host name

            修改主机名:
                # hostname HOST_NAME
                注销再登录则显示新主机名;重启之后,修改的主机名失效;

            CentOS 7:
                主机名的配置文件虽然存在,但是不具备保存主机名的意义;

                hostnamectl命令:
                    hostnamectl - Control the system hostname
                        # hostnamectl set-hostname HOST_NAME
                          注销在登录,新主机名生效,重启之后,该主机名仍然有效;


    3.本地解析文件:/etc/hosts
        格式:
            IP地址 主机名 主机名 ...

        CentOS 6和CentOS 7中功能相同;


    4.解析器文件:/etc/resolv.conf
        作用:保存了DNS服务器的IP地址,以用于基于DNS服务的主机名称解析功能;
            search DOMAIN_NAME
            nameserver DNS_SERVER_IP1
            nameserver DNS_SERVER_IP2
            nameserver DNS_SERVER_IP3
            ...
            前三个有效,之后可能无效;
    5.静态路由配置文件:/etv/sysconfig/network-scripts/route-IF_NAME
        注意:IF_NAME必须是此次路由出站的接口名称;

        此文件通常有两种书写风格:
            1)每条静态路由信息,占用一行:
                TARGET/MASK via NEXT_HOP [dev IF_NAME]
                示例:
                    10.0.0.0/8 via 172.16.0.1 dev eno16777736

            2)在多行中分别列出每条路由信息的内容:
                ADDRESS#=TARGET
                NETMASK#=MASK
                GATEWAY#=NEXT_HOP

                示例:
                    ADDRESS0=10.0.0.0
                    NETMASK0=255.0.0.0
                    GATEWAY0=172.16.0.1

    6.名称解析顺序的定义:/etc/host.conf
        multi on;
            服务器上的多个网络接口是否能够同时完成网络功能;

        order hosts,dns
            在实现将名称解析为IP地址时,本地hosts文件和远程DNS服务器哪一个被优先查找;

    7.各种名称解析的顺序:/etc/nsswitch.conf
    
    8.内核参数的调整文件:/etc/sysctl.conf
        net.ipv4.ip_forward=0
            Linux内核中的核心转发功能,是否开启;

        sysctl命令:
            sysctl - configure kernel parameters at runtime
                -A/-a:查看当前所有有效的内核参数及值;
                -w:修改运行时内核参数值;修改的结果为一次性有效;下一次重载内核参数时就会失效;
                -p:从/etc/systcl.conf文件中重载所有内核参数的值;

重启网络接口Centos 6 :
    # service network restart

以上是关于网络基础之配置文件的主要内容,如果未能解决你的问题,请参考以下文章

Linux基础之网络配置

网络配置之nmcli

Python基础之读取基础配置模块封装

Python基础之读取基础配置模块封装

linux 网络属性配置之ifcfg ip/ss配置文件

Linux之网络管理 相关基本配置文件