Linux网络属性配置

 

如何将linux主机接入到TCP/IP网络中:

    第一步:
        配置IP/NETMASK(ip地址、子网掩码):本地通信
    第二步:
        配置路由(网关):跨网络通信
    第三步:
        配置DNS服务器地址:基于主机名的通信
            主DNS服务器地址
            备用DNS服务器地址
            第三备用DNS服务器地址

Linux主机配置网络的方式

    1、静态指定(命令):
        ifcfg家族:
            ifconfig:配置IP,NETMASK
            route:路由
            etstat:状态及统计数据查看
        iproute2家族:
            ip OBECT:
                addr:地址和掩码
                link:接口
                route:路由
                ss:状态及统计数据查看
        CentOS:nm家族:
            nmcli:命令行工具
            nmtui:图形化配置界面(CentOS 7)
                注:CentOS 6图形化界面需使用setup命令

    2、修改相关配置文件:
        RedHat及相关发行版配置文件位置:
            /etc/sysconfig/network-scripts/ifcfg-NETCARD_NAME
        DNS服务器指定配置文件:
            /etc/resolv.conf

    3、动态分配:
        依赖于本地网络中有DHCP服务

网络配置命令

ifcfg命令家族:

ifconfig命令
    命令用法:
        ifconfig interface [aftype] options | address ...
            # ifconfig IFACE IP/MASK [UP|down]
            # ifconfig IFACE IP netmask NETMASK
    常用选项:
        -a:显示所有接口,包括inactive状态接口
        [-]promisc:启用或禁用该接口的混杂模式。
route命令:路由查看及管理
    路由条目类型:
        主机路由:目标地址为单个IP
        网络路由:目标地址为IP网络
        默认路由:目标为任意主机, 0.0.0.0/0.0.0.0

    查看:
        route -n

    添加:
        route add  [-net|-host] target [netmask Nm] [gw Gw]    [[dev] If]        

                示例:添加默认网关
                    # route add -net 0.0.0.0/0.0.0.0 gw x.x.x.x 
                    # route add default gw x.x.x.x 
    删除:
        route del [-net|-host] target [gw Gw]  [netmask  Nm] [[dev] If]

                示例:删除默认网关
                    # route del default
netstat命令:
    显示各种网络相关信息,如网络连接,路由表,接口状态 (Interface Statistics),masquerade 连接,多播成员 (Multicast Memberships) 等等。
    显示路由表:
        netstat -rm
            -r:显示内核路由表
            -n:数字格式
    显示网络连接:
        netstat [--tcp|-t] [--udp|-u] [--udplit|-U] [--stcp|-S] [--raw|-w] [--listening|-l] [--all|-a] [--numeric|-n] [--extend|-e[--extend|-e]] [--program|-p]

            -t:TCP协议的相关连接,连接均有其状态;FSM
            -u:UDP相关的连接
            -w:raw socket相关的连接
            -l:处于监听状态的连接
            -a:所有状态
            -n:以数字格式显示IP和port
            -e:扩展格式
            -p:显示相关的进程及ID

            常用组合:
                -tan、-uan、-tnl、-unl、-yunlp

            传输层协议:
                tcp:面向连接的协议,通信开始之前,要建立一个虚链路,通信完成后还要拆除连接
                udp:无连接的协议,直接发送数据报文

    显示接口的统计数据:
        netstat   {--interfaces|-I|-i} [iface]  [--all|-a]  [--extend|-e]  [--verbose|-v] [--program|-p]  [--numeric|-n]

            所有接口:
                netstat -i
            指定接口:
                netstat -I<IFace>

iproute家族:

ip命令:
    显示或操纵Linux主机的路由、网络设备、策略路由和隧道,是Linux下较新的功能强大的网络配置工具。
命令用法:
    ip [ OPTIONS ] OBJECT { COMMAND | help }
        OBJECT:={link|addr|route}
            注:OBJECT可简写,单个OBJECT的子命令也可以简写

ip OBJECT:
    网络设备配置:ip link
        ip link set-change device attributes

            dev NAME(Ddefault):指明要管理的设备,dev关键字可省略
            up和down:
            multicast on或multicast off:启用或禁用多播功能
            name NAME:重命名接口
            mtu NUMBER:设置MTU的大小,默认为1500
            netns PID:ns为namespace,用于将接口移动到指定的网络名称空间

        ip link show:显示设备的属性 

        ip link help:显示简要使用帮助

    IP地址管理:ip-address
        添加IP地址:ip address add
            ip addr IFADDR dev IFACE

                label NAME:为额外添加的地址指明接口别名
                [broadcast ADDRESS]:广播地址,会根据IP和NETMASK自动计算得到
                [scope SCOPE_VALUE]:
                    global:全局可用
                    link:接口可用
                    host:仅本机可用

        删除IP地址:ip address delete
            ip addr delete IFADDR dev IFACE

        查看ip地址:ip address show
            [IFACE]:仅显示指定接口的地址

    管理路由表:ip-route
        添加新路由:ip route add

            示例: 设置到网络10.0.0/24的路由经过网关193.233.7.65

                # ip route add 10.0.0/24 via 193.233.7.65

        修改路由:ip route change 

            示例: 修改到网络10.0.0/24的直接路由,使其经过设备dummy

              # ip route chg 10.0.0/24 dev dummy
              
     删除路由:ip route delete
      
     列出路由:ip route show

ss命令:查看网络状态信息

    命令用法:
        ss [options] [ FILTER ]    
    常用选项:
        -t:TCP协议相关的连接
        -u:UDP相关的连接
        -w:raw socket相关的连接
        -l:监听状态的连接
        -a:所有状态的连接
        -n:数字格式
        -p:相关的程序及其PID
        -e:扩展格式信息                
        -m:内存用量
        -o:计算器信息

配置文件:

    IP/NETMASK/GW/DNS等属性的配置文件:/etc/sysconfig/network-scripts/ifcfg-IFACE
       IFACE:接口名称
    路由相关配置文件:/etc/sysconfig/network-scripts/ifcfg-IFACE
    配置文件/etc/sysconfig/network-scripts/ifcfg-IFACE通过大量参数来定义接口,其可通过vim等文本编辑器直接修改,也可以使用专用的命令进行修改(CentOS 6:system-config-network(setup),CentOS 7: nmtui)
ifcfg-IFACE配置文件参数:
    DEVICE:此配置文件对应的设备的名称
    ONBOOT:在系统引导过程中,是否激活此接口
    UUID:此设备的唯一标识
    IPV6INIT:是否初始化IPv6
    BOOTPROTO:激活此接口时使用什么协议来配置接口属性,常用的有dhcp、bootp、static、none
    TYPE:接口类型,常见的有Ethernet,Bridge
    DNS1:第一DNS服务器指向
    DNS2:备用DNS服务器指向
    DOMAIN:DNS搜索域
    IPADDR:ip地址
    NETMASK:子网掩码;CentOS 7支持使用PREFIX以长度方式指明子网掩码
    GATEWAY:默认网关
    USERCTL:是否 允许普通用户控制此设备
    PEERDNS:如果BOOTPROTO的值为“dhcp”,是否允许dhcp server分配的dns服务器指向覆盖本地手动指定的DNS服务器指向,默认为允许
    HWADDR:设备MAC地址
    NM_CONTRILLED:是否使用NetworkManager服务来控制接口

管理网络服务

    CentOS 6:service SERVICE {start|stop|restart|status}
    CentOS 7:systemctl {start|stop|restart|status} SERVICE[.service]
    配置文件修改之后,如果要生效,需要重启网络服务:
        CentOS 6:# service network restart
        CentOS 7:# systemctl restart network.service

    用到非默认网关路由:/etc/sysconfig/network-scripts/ifcfg-IFACE
        支持两种配置方式,但不可混用:
            (1)每行一个路由条目:
                TARGET via GW
            (2)每三行一个路由条目:
                ADDRESS#=TARGET
                NETMASK#=MASK
                GATEWAY#=NEXTHOP
`

给接口配置多个地址

ip addr之外,ifconfig或配置文件都可以
    1、ifconfig IFACE_LABEL IPADDR/NETMASK
        IFACE_LABEL:eth0:0,eth0:1,...
    2、为别名添加配置文件
        DEVICE=IDACE_LABEL
        BOOTROTO:网上别名不支持动态获取地址
            static,none

 

原创文章,作者:641348038@qq.com,如若转载,请注明出处:http://www.178linux.com/63884

(0)
641348038@qq.com641348038@qq.com
上一篇 2016-12-16 15:02
下一篇 2016-12-16 17:38

相关推荐

  • 8月5日课堂笔记

    bash基础及shell编程初步 bash的特性及bash脚本编程初步    操作系统硬件, 内核把底层硬件的复杂性给隐藏起来,统一输出为一种系统调用,系统调用非常底层,把系统调用封装成了库。让程序运行起来。用户在创建时有一个默认shell。终点设备用来当做标准输入和输出。  要想与主机交互,需要一个【终端】,附着在终端接口程序:  &n…

    Linux干货 2016-08-07
  • 马哥网络21-第5周作业

    1、显示/boot/grub/grub.conf中以至少一个空白字符开头的行; [root@localhost proc]# grep "^[[:space:]]\{1,\}" /boot/grub/grub.conf root (hd0,0) kernel /vmlinuz-2…

    Linux干货 2016-08-08
  • awk入门应用

    awk概述使用语法常用命令选项相关输出命令print item1,item2,…printf FORMAT,item1,item2,….相关格式符相关修饰符相关内建变量相关内置函数相关操作符相关模式相关控制语句及示例if(condition) statementsif(condition){statements} else {statements}while…

    Linux干货 2016-12-04
  • 招聘Linux运维工程师

    岗位职责: 公司集群硬件的日常维护及管理 负责公司内网的服务器安装,部署和维护 监控服务器状态,发现问题并及时维护 负责产品发布上线 承担mangoDB的日常巡检 集群数据服务器的备份 编写服务器维护脚本,减少工作量,提高工作效率 任职要求: 1年以上Linux系统管理经验,精通Linux的管理和维护 能够熟练编排查运维过程中出现的服务故障,系统故障,网络故…

    Linux干货 2017-12-04
  • 马哥教育网络班20期+第二周课程练习

    1、Linux上的文件管理类命令都有哪些,其常用的使用方法及其相关示例演示。 文件管理有 cp, mv, rm  复制命令:cp [root@ddwhost ~]# cp /etc/magic /tmp/         cp&n…

    Linux干货 2016-06-23
  • vim文本编辑器小结

    vi=vim打开文件 alias vi =vim vim -m 只读方式打开文件 修改文件时则会无法保存   -b 二进制打开文件 -d file1 file2  比较两个文件 Command(normal)默认模式:  ZZ 保存并退出 ZQ 不保存并退出Insert:编辑模式&nbsp…

    2017-08-05

评论列表(1条)

  • 马哥教育
    马哥教育 2016-12-23 12:36

    赞~总结的比较详细了~~注意在实战环境中要把配置落到相关配置文件中~继续加油~