• 网络配置


    网络配置

    相关网络配置的文件

    查看网卡名配置相关文件

    [root@Auscoo ~]# more /etc/udev/rules.d/70-persistent-ipoib.rules 

    修改网卡命名示例:

    1、查看网卡的驱动并且卸载网卡驱动

    [root@rhel6 ~]# ethtool -i eth0
    driver: e1000 #网卡驱动
    [root@rhel6 ~]# modprobe -r e1000 #卸载网卡驱动

    2、修改70-persistent-net.rules文件

    [root@Auscoo ~]#vim /etc/udev/rules.d/70-persistent-ipoib.rules 

    3、重新加载网卡驱动并且重启网络服务

    [root@rhel6 ~]# modprobe e1000   #重新加载网卡驱动
    [root@rhel6 ~]# /etc/rc.d/init.d/network restart #重启网络服务

    将CentOS7.x网卡名改为传统命名方式:

    1、修改/etc/default/grbu文件

    # sed -i.bak -r 's/(GRUB_CMDLINE_LINUX=.*)"/1 net.ifnames=0"/' /etc/default/grub

    2、生成新的grub配置文件并重启生效

    grub2-mkconfig -o /etc/grub2.cfg

    网络配置相关文件

    1.配置文件示例:

    [root@Auscoo ~]#vim /etc/sysconfig/network-scripts/ifcfg-xxx

    2.参数介绍:

        DEVICE=eth0    #设定物理设备别名(除了动态分配的PPP设备,这里是一个逻辑名)
        HWADDR=00:11:22:33:44:55    #指定MAC地址,不能和MACADDR一起使用
        # MACADDR=AA:BB:CC:DD:EE:FF    #覆盖物理分配的MAC地址,不能和HWADDR一起使用
        TYPE=Ethernet    #网卡协议类型
        UUID=9420c638-16e9-41a1-bf59-325c6f601871 #网卡的UUID
        ONBOOT=no    #系统启动时是否自动加载该网卡yes/no
        NM_CONTROLLED=yes #network manger的参数,实时生效,修改后无需要重启网卡立即生效
        BOOTPROTO=dhcp    #获取地址协议[static静态]、[bootp协议]、[dhcp协议]
        IPADDR=192.168.1.254    #IP地址
        NETMASK=255.255.255.0    #IP对应的子网掩码
        GATEWAY=192.168.1.1    #IP对应的网关地址
        # DNS1=8.8.8.8    #指定DNS1地址
        # DNS2=8.8.4.4    #制定DNS2地址
        # BROADCAST=192.168.1.255    #IP对应的广播地址
        # NETWORK=192.168.1.0    #对应的网络地址
        # USERCTL=yes    #非root用户是否允许控制这个设备
        # SRCADDR=192.168.1.254    #指定为发出去的数据包的源IP地址
        # PEERDNS=yes    #是否以此修改 [ /etc/resolv.conf ]
        # DHCP_HOSTNAME=hostname    #DHCP接收IP地址前可指定主机名
        # MASTER=bond0    #以太网接口被连接到这个接口
        # SLAVE=yes    #这个设备是否由指定在MASTER字段中的频道绑定接口控制

    3.设置静态ip(其他参数不要动)

    #之前的BOOTPROTO=dhcp 注释掉
        BOOTPROTO=static
        IPADDR=192.168.160.20
        NETMASK=255.255.255.0
        GATEWAY=192.168.160.2
    DNS1=192.168.160.2
        DNS2=114.114.114.114

    4、重启网卡

    service network restart 


    systemctl restart network

    5、检验

    ifconfig指令查看虚拟机IP是否为192.168.160.20
    ping www.baidu.com指令查看是否能ping通

    网络配置参考文件:/usr/share/doc/initscripts-9.03.53/sysconfig.txt

    网卡的配置在:/etc/sysconfig/network-scripts/下,配置文件:ifcfg-网卡名

    网络配置文件常用配置参数详解:

    DEVICE:此配置文件应用到的设备
    HWADDR:对应的设备的MAC地址
    BOOTPROTO:激活此设备时使用的地址配置协议,常用的dhcp, static, none, bootp
    NM_CONTROLLED:NM是NetworkManager的简写,此网卡是否接受NM控制;建议为“no”(NetworkManager:图形界面的网络配置工具,不支持桥接,强烈建议关闭)
    ONBOOT:在系统引导时是否激活此设备
    TYPE:接口类型,常见有的Ethernet, Bridge
    UUID:设备的惟一标识
    IPADDR:指明IP地址
    NETMASK:子网掩码
    GATEWAY: 默认网关
    DNS1:第一个DNS服务器指向
    DNS2:第二个DNS服务器指向
    USERCTL:普通用户是否可控制此设备
    PEERDNS:如果BOOTPROTO的值为“dhcp”,是否允许dhcp server分配的dns服务器指向信息直接覆盖至/etc/resolv.conf文件中

    其他相关配置文件

    DNS配置文件:

    [root@Auscoo ~]# cat /etc/resolv.conf
    • nameserver DNS_IP

    本地网络解析配置文件:

    [root@Auscoo ~]# cat /etc/hosts
    127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
    ::1         localhost localhost.localdomain localhost6 localhost6.localdomain6

    主机名配置文件:

    • centos6.x:/etc/sysconfig/network
    • centos7.x:/etc/hostname

    关于网络的配置Tools

    ifconfig

    • -a:查看启用和被禁用的网卡信息
    • interface {up|down}:启用或禁用网卡
    • interface IP/NETMASK:临时设置IP
    • interface [-]promisc:设置网卡的工作在混杂模式
    • -s interface:查看指定网卡的流量信息

    route

    • -n:以数字方式显示,不解析,提高效率
    • add {-net | -host} NETWORK/NETMASK gw GATEWAY dev DEVICE 添加路由
    • {add | del} default gw GATEWAY 添加或删除默认路由
    • del {-net | -host} NETWORK/NETMASK gw GATEWAY 删除路由
    route add -net 10.0.0.0/8 gw 172.20.0.1 dev eth1 #添加一条到10.0.0.0网段的路由
    route del -net 10.0.0.0/8 gw 172.20.0.1 #删除10.0.0.0网段的路由

    netstat

    • -n:以数字方式显示,不解析,提高效率
    • -r:查看路由表
    • -t:TCP相关
    • -u:UDP相关
    • -w:裸套接字
    • -l:查看处于监听状态的端口
    • -a:查看所有状态的端口
    • -e:显示更详细的信息
    • -p:查看相关的进程PID
    • -i:显示网卡流量
    • -Iinterface:查看指定网卡的流量信息 == ifconfig -s interface
    [root@centos7 ~]# netstat -tnulp  #显示TCP,UDP的监听状态及相关进程的端口    

    ip

    • link
      • set interface {up|down}:启用或禁用网卡
      • show interface:显示指定网卡信息
    • addr
      • add IP/NETMASK [label interface:#] [scope {global | link | host}] [broadcast IP] dev interface:添加配置临时地址
        • label:指定别名
        • scope:作用域
          • global:作用域为全局
          • link:仅和此网卡相连的网络生效
          • host:仅主机可用
        • broadcast:设定广播地址
      • del dev interface [label interface:#]:删除IP
      • flush dev interface [label interface:#]:清空IP
    • route
      • add IP/NETMASK via GATEWAY dev interface:添加路由
      • add default via GATEWAY dev interface:添加默认路由
      • del IP/NETMASK via GATEWAY dev interface:删除路由
      • flush:清空路由表
      • show:查看路由表
    [root@centos7 ~]# ip addr add 192.168.1.100/24 label eth0:0 dev eth0 #设置临时IP地址

    ss

    • -n:以数字方式显示,不解析,提高效率
    • -t:TCP相关
    • -u:UDP相关
    • -w:裸套接字
    • -x:显示unix sock相关信息
    • -l:查看处于监听状态的端口
    • -a:查看所有状态的端口
    • -e:显示更详细的信息
    • -p:查看相关的进程PID
    • -m:内存用量
    • -o:计时器信息
    • -s:显示当前socket详细信息
    • state TCP_STATE '( dport = :ssh or sport = :ssh )'
      • established
      • listen
      • fin_wait_1
      • fin_wait_2
      • syn_sent
      • syn_recv
    [root@centos7 ~]# ss state established '( dport = :ssh or sport = :ssh )' #查看已连接状态的ssh

    nmcli:地址配置工具(CentOS7.x)

    子命令补全功能:yum install bash-completion ,依赖epel源

    1、查看信息

    [root@centos7 ~]# nmcli device status
    [root@centos7 ~]# nmcli connection show

    2、删除配置

    [root@centos7 ~]# nmcli connection delete ens33

    3、增加配置

    [root@centos7 ~]# nmcli connection add con-name ens33 ifname ens33 type ethernet ipv4.method auto connection.autoconnect yes
    • con-name ens33:配置文件名称
    • ifname ens33:指定网卡设备
    • type ethernet:网络类型以太网
    • ipv4.method auto:自动获取IP
    • connection.autoconnect yes:开机自启动

     4、切换配置

    [root@centos7 ~]# nmcli connection up ens33

     5、修改配置文件名ens33 --> ens33-static

    [root@centos7 ~]# nmcli connection modify ens33 con-name ens33-static

     6、修改配置IP

    [root@centos7 ~]# nmcli connection modify ens33-static ipv4.addresses 192.168.0.100/24 ipv4.gateway 192.168.0.1 ipv4.method manual
    • ipv4.addresses 192.168.0.100/24:IP地址
    • ipv4.gateway 192.168.0.1:网关
    • ipv4.method manual:手动获取,静态地址必须配置为手动,否则默认动态

    7、重新读取配置文件

    [root@centos7 ~]# nmcli connection reload

    8、断开和连接网络连接

    [root@centos7 ~]# nmcli device disconnect ens33
    [root@centos7 ~]# nmcli device connect ens33

    9、查看网络配置的详细信息

    [root@centos7 ~]# nmcli connection show ens33

    10、在配置中再添加一个地址

    [root@centos7 ~]# nmcli connection modify ens33-static +ipv4.addresses 10.0.0.2/8

    其他相关工具

    ping:测试网络命令

    • -c count:ping的次数
    • -W timeout:超时时间,配合-c使用
    • -I ipaddress:指定用自己主机的IP去ping对方主机
    • -s size:每次ping发出的数据包大小,最大值65507
    • -f:竭尽自己主机的能力发出数据包
    [root@centos7 ~]# ping -c1 -W1 192.168.0.6 #脚本中常用的ping测试,ping一次,超时时间1s
    [root@centos7 ~]# ping -s 65507 -f 192.168.0.6 #竭尽自己所能,向192.168.0.6发出大数据包,ddos攻击

    tcpdump:抓包工具

    • -n:禁止解析IP
    • -i interface:指定网卡接口
    • tcp|udp|icmp|arp:指定包协议

    mtr:网络诊断工具

    traceroute:跟踪路由

    tracepath:跟踪路由

    ifup:启用网卡

    ifdown:禁用网卡

    setup:字符界面配置工具(centos6.x)

    system-config-network-tui:字符界面网络配置工具(centos6.x)

    hostnamectl:设置主机名工具(centos7.x)

    • status
    • set-hostname HOSTNAME

    mm-connection-editor:图形界面网络配置工具(centos7.x)

    nmtui:字符界面配置工具(centos7.x)

    • nmtui-connect
    • nmtui-edit
    • nmtui-hostname

    lftp | lftp [-u user[,pass]] [-p port] [-e cmd] FTPSERVER:FTP客户端工具

    • get
    • mget
    • put
    • mput
    • mirror DIR

    lftpget URL:非交互式下载ftp服务器的文件

    wget:网络下载工具

    • -q:静默模式
    • -c:断点续传
    • -P /path/DIRNAME:下载的文件保存到指定文件夹
    • -O /path/FILENAME:下载的文件保存到指定位置,并重命名
    • --limit-rate=# K|M:限速至# K|M

    elinks | links:字符界面web浏览器

    • -source:查看网页源代码
    • -dump:只显示文字

    Bonding和Team

    ++Bonding++

    绑定:将多块网卡绑定同一IP地址对外提供服务,可以实现高可用或者负载均衡。

    工作模式:

    mode 0:balance-rr 轮调策略:多张网卡可以轮流发数据包,实现负载均衡的功能

    mode 1:active-backup 主备策略:其中active网卡的发数据包,其他备用

    mode 3:broadcast 广播策略:每个网卡都会发一份包

    配置示例:

    1、创建bonding的设备配置文件

    # cat >/etc/sysconfig/network-scripts/ifcfg-bond0 <<EOF
    DEVICE=bond0
    BOOTPROTO=none
    BONDING_OPTS="miimon=100 mode=1"
    IPADDR=192.168.0.6
    PREFIX=24
    EOF

    miimon=100:每100ms进行一次链路检测

    2、配置bonding的从属网卡

    [root@rhel6 ~]# cat >/etc/sysconfig/network-scripts/ifcfg-eth0 <<EOF
    DEVICE=eth0
    BOOTPROTO=none
    MASTER=bond0
    SLAVE=yes
    EOF
    [root@rhel6 ~]# cat >/etc/sysconfig/network-scripts/ifcfg-eth1 <<EOF
    DEVICE=eth1
    BOOTPROTO=none
    MASTER=bond0
    SLAVE=yes
    EOF

    3、重启网络服务并查看bonding状态

    # /etc/rc.d/init.d/network restart
    [root@rhel6 ~]# cat /proc/net/bonding/bond0 |head
    Ethernet Channel Bonding Driver: v3.7.1 (April 27, 2011)

    Bonding Mode: fault-tolerance (active-backup)
    Primary Slave: None
    Currently Active Slave: eth0 #现在eth0在工作状态
    MII Status: up
    MII Polling Interval (ms): 100
    Up Delay (ms): 0
    Down Delay (ms): 0

    删除bonding配置示例

    1、禁用bond0并卸载bonding模块

    # ip link set bond0 down
    # modprobe -r bonding

    2、还原配置文件,重启网络

    附:官方文档链接

    ++Team++

    网络组:是将多个网卡聚合在一起方法,从而实现冗错和提高吞吐量。

    工作模式:runner

    • broadcast:广播
    • roundrobin:轮调
    • activebackup:主备

    1、创建一个网络组接口

    [root@centos7 ~]# nmcli connection add type team con-name team0 ifname team0 config '{"runner":{"name":"activebackup"}}'

    2、配置team0

    [root@centos7 ~]# nmcli connection modify team0 ipv4.addresses 172.20.108.244/16 ipv4.method manual ipv4.gateway 172.20.0.1

    3、创建port接口

    [root@centos7 ~]# nmcli connection add con-name team0-eth1 type team-slave ifname eth1 master team0
    [root@centos7 ~]# nmcli connection add con-name team0-eth2 type team-slave ifname eth2 master team0

     4、启动team0及从属接口

    [root@centos7 ~]# nmcli connection up team0
    [root@centos7 ~]# nmcli connection up team0-eth1
    [root@centos7 ~]# nmcli connection up team0-eth2

    5、查看工作状态

    [root@centos7 ~]# teamdctl team0 state

    6、配置文件示例:

     ifcfg-team0配置文件

    7、删除team0

    [root@centos7 ~]# nmcli connection down team0
    [root@centos7 ~]# nmcli connectioni delete team0-eth0
    [root@centos7 ~]# nmcli connectioni delete team0-eth1

    Bridge

    桥接:把一台机器上的若干个网络接口“连接”起来。其结果是,其中一个网口收到的报文会被复制给其他网口并发送出去。以使得网口之间的报文能够互相转发。网桥就是这样一个设备,它有若干个网口,并且这些网口是桥接起来的。与网桥相连的主机就能通过交换机的报文转发而互相通信。

    主机A发送的报文被送到交换机S1的eth0口,由于eth0与eth1、eth2桥接在一起,故而报文被复制到eth1和eth2,并且发送出去,然后被主机B和交换机S2接收到。而S2又会将报文转发给主机C、D。

    1、创建一个网桥

    [root@centos7 ~]# nmcli connection add type bridge con-name br0 ifname br0

    2、配置网桥

    [root@centos7 ~]# nmcli connection modify br0 ipv4.addresses 192.168.0.7/24 ipv4.method manual

    3、将从属网卡加入网桥

    [root@centos7 ~]# nmcli connection add type bridge-slave con-name br0-eth0 ifname eth0 master br0

    4、启用网桥并查看状态

    [root@centos7 ~]# nmcli connection up br0
    [root@centos7 ~]# nmcli connection up br0-eth0
    [root@centos7 ~]# brctl show
    bridge name     bridge id               STP enabled     interfaces
    br0             8000.000c295df21e       yes             eth0

    5、配置文件示例:

    [root@centos7 ~]# cat /etc/sysconfig/network-scripts/ifcfg-br0
    DEVICE=br0
    STP=yes
    BRIDGING_OPTS=priority=32768
    TYPE=Bridge
    PROXY_METHOD=none
    BROWSER_ONLY=no
    BOOTPROTO=none
    DEFROUTE=yes
    IPV4_FAILURE_FATAL=no
    IPV6INIT=yes
    IPV6_AUTOCONF=yes
    IPV6_DEFROUTE=yes
    IPV6_FAILURE_FATAL=no
    IPV6_ADDR_GEN_MODE=stable-privacy
    NAME=br0
    UUID=94582afc-01a1-406d-a25a-91be7c350c23
    ONBOOT=yes
    IPADDR=192.168.0.7
    PREFIX=24
    [root@centos7 ~]# cat /etc/sysconfig/network-scripts/ifcfg-br0-eth0
    TYPE=Ethernet
    NAME=br0-eth0
    UUID=9dd2a7fc-f143-4243-89ca-85f223e34348
    DEVICE=eth0
    ONBOOT=yes
    BRIDGE=br0
    
    网桥配置文件
  • 相关阅读:
    Vue 学习笔记之 —— 组件(踩了个坑)
    Vue 学习笔记之 —— 表单输入绑定
    js cookie
    python中线程、进程和协程的区别
    设计模式
    Mysql从入门到精通整理
    如何处理缓存失效、缓存穿透、缓存并发等问题
    mysql 查询当天、本周,本月,上一个月的数据
    Mysql分表和分区的区别、分库分表介绍与区别(转)
    mysql数据库死锁的产生原因及解决办法
  • 原文地址:https://www.cnblogs.com/cainiao-chuanqi/p/13372909.html
Copyright © 2020-2023  润新知