zoukankan      html  css  js  c++  java
  • 网络入门(一)

    LINUX中于网络相关的配置文件

    笔者作为一个文字的搬运者,也是一个小白用户,因为老熬夜记忆力很是糟糕,一直靠别人笔记过活。这是笔者整理的在Linux中与上网有关的一些配置文件和小命令。

     

    一、与网卡名相关的配置文件

    centos5:

      centos5在/etc/modprobe.conf文件中是使用别名定义的网卡名

        alias eth0 e1000

        可以在此处修改。

    centos6:

      centos6中的网卡名默认是eth0,当新增删除网卡的时候网卡名会发生变化,可能会被顶替

      centos6中可以修改/etc/udev/rules.d/70-presistent-net.rules文件中

     

      DELL公司电脑可能会在BIOS中启用bisodevname的软件会把网卡名命名成

        主板集成网卡会命名成em1 em2 。。。

        PCI类型网卡会命名成pYpX Y:表示插槽,X:表示端口,第几个接口

     

      永久修改,修改配置文件:

        默认是eth0   eth1 ....

        编辑/etc/udev/rules.d/70-persistent-net.rules文件中的网卡信息,来修改网卡名

        重启计算机 或者 卸载网卡驱动再加载网卡驱动。modprobe -r e1000 ; modprobe e1000

      临时修改,利用命令修改:

        先禁用网卡,在修改网卡名

        ip link set eth0 down

        ip link eth0 name Newname

    centos78:

      centos78中的网卡名是基于硬件、设备拓扑和设备类型命令。

      systemd对网卡的命名:

        1. 如果Firmware或BIOS为主板上集成的设备提供的索引信息可用,且可预测则根据此索引进行命名,如:eno1

        2. 如果Firmware或BIOS为PCI-E扩展槽所提供的索引信息可用,且可预测,则根据此索引进行命名,如:ens1

        3. 如果硬件接口的物理位置信息可用,则根据此信息命名,如:enp2s0

        4. 如果用户显式启动,也可根据MAC地址进行命名,如:enx2387a1dc56

        5. 上述均不可用时,则使用传统命名机制

     

      使用传统命名方法:

        修改/etc/default/grub中

          GRUB_CMDLINE_LINUX="net.ifnames=0 biosdevname=0"

        为grub2生成其配置文件

          gurb2-mkconfig /boot/gurb2/gurb.cfg

     

     

    二、与IP/NETMASK/GATEWAY/DNS相关配置文件

      centos5678通用方法

      编辑/etc/sysconfig/network-scripts/ifcfg-eth0文件,来修改IP地址

        MACADDR=11:22:33:44:55:66    临时需改MAC地址

        DEVICE=NET_NAME          指定网卡名

        NAME=NET_NAME          指定网卡名

        BOOTPROTO=static        指定IP获取类型,none   dhcp    static,如果为DHCP就会自动从dhcp服务其上获取IPNEMASTDNSGATEWAY等相关信息

        IPADDR=10.0.0.8          指定IP地址

        NETMASK=255.255.255.0      指定子网掩码

        PREFIX=24           指定掩码长度,CIDR的写法

        GATEWAY=10.0.0.1        指定默认网关,用于跨网段通信

        DNS1=222.222.222.222       指定默认DNS

        DNS2=             指定备用DNS

        ONBOOT=yes           开机自启动

        MOMAIN=haha.com       自动补充搜索域名

      

      如果想要在一个网卡上设置多个IP地址,网卡别名需要静态指定,不能动态获取。

      同时这个配置文件名需要时ifcfg-eth#:#,对应的DEVICE和NAME中需要对应的改成eth#:#

    图形管理工具:

      centos56:

        setup

        system-config-network-tui

     

      centos78:

        nmtui

        nmtui-connect

        nmtui-edit

        nmtui-hostname

    三、与主机名相关的配置文件

      centos6:

        编辑/etc/sysconfig/network文件,来修改主机名

        hostname命令可以临时修改主机名

      centos78:

        编辑/etc/hostname文件,来修改主机名

        hostname命令可以临时修改主机名

         hostnamectl set-hostname HOSTNAME  此命令会立即生效,同时会修改配置文件

        备注:如果/etc/hostname文件不存在,主机名会默认改成localhost.localdomain

     

    四、与路由相关的配置文件

    需要手工创建:

    保存再/etc/sysconfig/nework-scripts/route-IFACE route-固定格式 IFCAE用对等的网卡名替换

     

    两种写法:

      第一种:

        10.0.0.8/8 via 172.16.0.1

     

      第二种:

        ADDRESS0=10.0.0.8

        NETMASK0=255.0.0.0

        GATEWAY0=172.16.0.1

     

        ADDRESS1=10.0.0.8

        NETMASK1=255.0.0.0

        GATEWAY1=172.16.0.1

         等等有几条需要写几段

    五、与配置IP地址等相关的小命令

     ifconfig命令
        ifconfig        显示活动网卡信息
        ifconfig DEVICE    显示指定网卡的网卡信息
        
        ifconfig DEVICE up|down        启用禁用指定网卡
        ifconfig DEVICE IPADDR netmask NETMASK    给指定的网卡设定IP和NETMASK
        ifconfig DEVICE 0.0.0.0/0    临时清空地址
        
        ifconfig DEVICE:# IPADDR/NETMASK        给指定的网卡设置别名,同时指定IP和子网掩码长度
            ifconfig DEVICE:# down                取消网卡别名
        选项:
            -s             统计网卡的传输信息
            -a            显示所有网卡信息,包括禁用和启用

        备注:使用ip addr add 添加的非主要地址ifconfig是看不到,只能使用ip addr show查看。
            ifconfig可以查看到网卡别名,如果想要清楚某个网卡别名可以直接禁用了 ifconfig eth1:1 down就直接没有了

    ip命令
            来自于iproute软件包
           ip [ OPTIONS ] OBJECT  COMMAND | help
           ip [ -force ] -batch filename
           

            address子集
                show            显示地址相关信息
                    ip addr show
                    ip addr show dev eth1        只显示指定eth1网卡的相关信息,关键字dev可以省略
                    ip addr show to 10/8        只显示10.0.0.0网段的地址
                    ip addr show label eth1:1    只显示eth1:1网卡别名的地址相关信息
                add             添加地址相关信息
                    ip address add ADDR/PREFIX dev DEVICE label I:2

                del                删除地址相关信息
                    ip address del ADDR/PREFIX dev DEVICE label I:2
                
                flush            清空地址相关信息
                    ip addr flush dev eth0    清空eth0上的所有地址
                    ip addr flush dev eth1 to 10.3/16    删除eth1网卡上10.3.0.0网段的所有相关地址

            route子集
                show            显示路由条目信息,可省略
                    ip route
                add                添加路由条目相关信息
                    ip route add 10.1.0.0/24 via 10.1.0.1 dev eth0 proto static metric 100
                    ip route add  default via 7.7.7.200 dev eth0     添加默认路由
                    ip route add default via 8.8.8.200 dev eth0        
                
                del                删除路由条目相关信息
                    ip route del 10.1.0.0/24 via 10.1.0.1
                    ip route del default dev eth0


            link子集
                show        
                    ip link show    显示网络接口信息,show可以省略,ip link 和 ip link show 结果一样
                    ip link show DEVICE    显示指定的DEVICE网卡接口信息
                set
                    ip link set DEVICE up|down    启用或禁用某个网卡,与ifconfig DEVICE on|off功能一致
                    ip link set DEVICE apr on|off    启用或禁用某个网卡的arp功能
                    ip link set DEVICE multicast on|off    启用或禁用某个网卡的多拨功能
                    ip link set DEVICE name NEW_DEIVCE_NAME    给某个网卡改名,但是改名的前需要先禁用网卡
                    ip link set DEVICE mtu MTU        指定某个网卡的mtu大小
                    ip link set DEVICE promisc on|off    指定某个网卡启用或禁用混杂模式,主要用于抓包
                   
            选项:
                -s            显示接口统计统计信息
                    ip -s link        显示接口统计信息,和netstat -i命令、ifconfig -s命令显示功能一样
                -c            有颜色输出,会在网卡地址或网卡名称处加以颜色显示,建议定义成别名alias ip='ip -c'

    route命令
        route            显示路由表
        route -n        以数字方式显示路由表
        route add/del [-net|-host|default] target [netmask Nm] [gw Gw] [dev If]
        例:
            route add -host 172.8.2.100/24 gw 10.0.0.1 dev eth1        添加一条主机路由,需要经10.0.0.1网关出去,指定eth1网卡出口,可以省略指定网卡
            route add -net 10.0.0.0/8 gw 192.168.0.1                 添加一条网络路由,需要经192.168.0.1网关出去,
            route default gw 10.0.0.1 dev eth0                        添加一条默认路由
            route del -net 10.0.0.0/8 gw 192.168.0.1                删除指定的网络路由条目
            route del -host 172.8.2.100/24 gw 10.0.0.1 dev eth1        删除指定的主机路由
            route del default gw 10.0.0.1                            删除默认路由

    arp命令
        arp -n     可以查看通信过的IP地址和MAC的对应关系
            -d IPADDR    删除指定IPADDR地址
            -s IPADDR  MAC    绑定IP地址和MAC绑定,ARP绑定的优先级最高

    nmcli命令
        IP地址的另外一个配置命令,是一个庞大的命令集合。多用来广管理网卡配置文件
        
        语法:nmcli [ OPTIONS ] OBJECT  COMMAND | help
        
            OBJECT=help | general | networking | radio | connection | device | agent | monitor
            
            
        connection子集                针对的是网卡配置文件
            子集语法:nmcli connection show | up | down | modify | add | edit | clone | delete | monitor | reload | load | import | export   [ARGUMENTS...]
            
            show [DEVICE]            显示所有或指定网卡状态信息
            
            reload                重新加载网卡配置文件    
            
            up DEVICE_C            启用启用某个网卡的某个配置文件
            
            down DEVICEC_C        禁用启用某个网卡的某个配置文件
            
            add     OPTION                            给指定网卡添加配置文件
                OPTION:
                    ifname    DEVICE                相当于配置文件DEVICE=那列,这里必须指定
                    type    ethernet            相当于配置文件TYPE=那列,这里必须指定
                    con-name NEW_NAME            相当于配置文件NAME=那列
                    ipv4.method    auto|manual|disabled        
                                                auto就是dhcp    manual就是static    相当于配置文件BOOTPROTO=那列,这里必须指定
                    ipv4.addresses    IP/NATMASK    IP地址和掩码
                    ipv4.dns                    DNS
                    ipv4.gateway                网关
                    ipv4.routes                    路由

            delete                    删除指定网卡的配置文件
                    
            modify DEVICE_C OPTION    编辑某个网卡配置文件
                OPTION:
                    con-name NEW_NAME            修改网卡配置文件名
                                                例:    nmcli connection modify eth2 con-name eth2-jia        把网卡配置文件名eth2改成eth2-jia
                    ipv4.method    auto|manual|disabled        
                                                auto就是dhcp    manual就是static    
                    ipv4.addresses    IP/NATMASK    修改IP地址和掩码
                    ipv4.dns                    修改DNS
                    ipv4.gateway                修改网关
                    ipv4.routes                    修改路由
                    

        device子集                针对的是网卡
            子集语法:nmcli device status | show | set | connect | reapply | modify | disconnect | delete | monitor | wifi | lldp  [ARGUMENTS...]
            
            status                显示网卡状态,可以省略。nmcli device 等同于 nmcli device status
            
            show [DEVICE]        查看网卡具体属性信息,后面如果指定网卡了,可以显示指定网卡的具体属性信息
            
            connect DEVICE        连接指定网卡
            
            disconnect DEVICE    断开连接指定网卡
            
            delete    DEVICE        删除指定软设备。This device is not a software device or is not realized
            
            


    hostnamectl命令
        仅在centos78有此命令
        hostnamectl set-hostname haha        把主机名改成haha,立即生效,同时会修改配置文件/etc/hostname
        hostnamectl status                    显示主机名,内核版本信息,操作系统版本信息等等
                [root@haha8 ~]# hostnamectl status
                   Static hostname: haha8
                         Icon name: computer-vm
                           Chassis: vm
                        Machine ID: 18fe9b54d4144939aef656523690f3ed
                           Boot ID: 75b58ca1fca043b0b86b3adbaea7c04e
                    Virtualization: vmware
                  Operating System: CentOS Linux 8 (Core)
                       CPE OS Name: cpe:/o:centos:centos:8
                            Kernel: Linux 4.18.0-147.el8.x86_64
                      Architecture: x86-64

     

    六、多网卡绑定的介绍

     

    共7种模式:0-6 mode

      MOde 0(balance-rr)  轮询策略,从头到尾顺序的

      Mode 1(active-backup) 主备策略,只有一个slave被激活

      MOde 3(broadcast) 广播模式,再所有的slave接口上传送所有的报文,提供容错能力

       备注:

        active-backup、balance-tlb 和 balance-alb 模式不需要交换机的任何特殊配置。其他绑定模式需要配置交换机以便整合链接。

     

    创建bonding设备的配置文件

      需要编辑/etc/sysconfig/network-scripts/ifcfg-bond0

        TYPE=band

        DEVICE=band0

        BOOTPROTO=none

        IPADDR=10.0.0.100

        PREFIX=24

        BONDING_OPTS="mode=1 miimon=100"

        备注:miimon是指监测链路时间间隔,如果miimon=100,表示每100ms,检测一次,如果一条链路不通,就立刻转入另一条线路

     

     

    同时还需要再网卡配置文件中修改/etc/sysconfig/network-scripts/ifcfg-eth0和ifcfg-eth1

        DEVICE=eth#

        NAME=eth#

        MASTER=bond0

        SLAVE=yes

        ONBOOT=yes

    可以通过查看/proc/net/bonding/bond0绑定多网卡的具体信息。

     

    卸载bond网卡

      第一步,需要卸载bonding的内核模块

      第二步,删除ifcfg-bond0配置文件,同时更改ifcfg-eth0和ifcfg-eth1文件

      第三步,重启网络服务

     

    除了手工编写配置问价的方法外,还可以nmcli命令来生成配置文件

     

    #生成bond0配置文件

    nmcli connection add ifname bond0 con-name bond0 type  bond ipv4.method manual ipv4.addresses 10.0.0.18/24 ipv4.gateway 10.0.0.2 ipv4.dns 222.222.222.222 mode active-backup

    #生成各网卡的bond的子文件

    nmcli connection add ifname ens160 con-name ens160 type bond-slave master bond0

    nmcli connection add ifname ens192 con-name ens192 type bond-slave master bond0

    nmcli connection add ifname ens224 con-name ens224 type bond-slave master bond0

    #启用各网卡配置文件

    nmcli connection up ens160

    nmcli connection up ens192

    nmcli connection up ens224

     

     

  • 相关阅读:
    Java方法
    Java流程控制
    Java基础
    常用Dos命令
    MarkDown语法
    怎样获取最新版的javascript文件,解决被浏览器缓存的问题
    笔记:javascript操作iframe内的DOM元素,及调用iframe内的方法
    .net程序部署(mono方式)
    面向对象的一点简易理解
    [李说新语]系列(1)西汉勇士贯高到底该不该死
  • 原文地址:https://www.cnblogs.com/fengciaimei/p/12783910.html
Copyright © 2011-2022 走看看