Linux网络配置与网络信息查看讲解(网卡基本配置、网卡会话配置、网卡绑定、主机名配置、路由配置)

目录

配置网卡基本信息

通过nmcli命令配置网卡

通过配置网卡文件配置网卡

通过nmtui命令配置网卡

通过nm-connection-editor命令配置网卡

网卡高级配置

配置网络会话

配置网卡绑定(Bonding)

通过nmcli命令配置网卡绑定

nm-connection-editor 进行网卡绑定(图形化界面)

通过编辑文件的方式实现网卡绑定

配置设备主机名

常用的其它网络信息查看命令

ethtool

route

ifconfig

ping

traceroute

tracepath

netstat

nslookup

arp

tcpdump


配置网卡基本信息

通过nmcli命令配置网卡

nmcli是NetworkManager的一个命令行工具,在使用此命令前,需要确保NetworkManager为运行状态

1、查看NetworkManager状态

systemctl status NetworkManager         查看NetworkManager状态

systemctl start  NetworkManager        开启Net

systemctl restart NetworkManager     重新启动Net(PID值会发生变化)

systemctl reload NetworkManager        重新启动Net(PID值不会发生变化)

systemctl is-enabled NetworkManager  查看Net是否开机自启动

systemctl enable NetworkManager        设置Net开机自启动

2、使用nmcli命令前还需要查看NetworkManager是否接管网络设置

nmcli network 查看是否接管网络配置(或者nmcli n

nmcli n on    设定接管网络配置

nmcli n off    设定取消接管网络配置

3、nmcli查看命令

nmcli network connectivity 查看网络连接状态(或者nmcli n c

full                网络正常连接

       limited          网络连接,但是无法上网

       portal            网络连接,但是需要认证才可以上网

       none             无网络连接

       unknown       无法识别网络

nmcli general status   查看详细网络连接状态(或者nmcli g s

       STATE            显示网络是否连接(con表示已连接)

       CON              同nmcli n c 命令

      WIFI-HW       WIFI硬件开关是否开启

       WIFI               WIFI软件开关是否开启

       WWAN-HW   WWAN硬件开关是否开启

       WWAN          WWAN软件开关是否开启

nmcli connection show  显示所有网络连接信息(或者nmcli c s

 nmcli c s –a      显示当前启动的连接(--active)

 nmcli c s 网卡名  显示特定网卡的详细连接信息

nmcli device status    显示有Net识别到的设备及其状态(或者nmcli d s

4、使用nmcli配置网卡基本信息

c是connection,m是modify的缩写

nmcli c m 网卡 ipv4.address 192.168.10.1/24           配置IPv4地址

nmcli c m 网卡 ipv4.method manual                         设置IP地址为静态配置(默认为auto)

nmcli c m 网卡 ipv4.getway 192.168.10.254            修改网关

nmcli c m 网卡 ipv4.dns 192.168.10.254                  配置DNS服务器

nmcli c m 网卡 +ipv4.dns 192.168.20.1                   添加一个DNS服务器

nmcli c m 网卡 connection.autoconect yes              设置为开机启动

nmcli c up 网卡                                                         启用网卡连接

nmcli c down 网卡                                 关闭网卡连接

nmcli c reload 网卡                                重启网卡连接

nmcli c m 网卡 ipv4.method “”              将选项返回到默认值(“”表示默认值)

nmcli c loda 网卡配置文件                     重新加载网卡配置文件

通过配置网卡文件配置网卡

网卡配置文件/etc/sysconfig/network-scripts/

cd /etc/sysconfig/network-scripts/  进入网卡配置文件

vim ifcfg-ens160                 编辑文件下的某个网卡信息

nmcli connection reload ens160    重新启用此网卡

nmcli connection up ens160        启用此网卡

配置网卡信息的内容

TYPE=Ethernet                   表示网卡类型(此处表示以太网)

PROXY_METHOD=none          代理方式(默认为none,表示无代理)

BROWSER_ONLY=no             是否只是用来浏览浏览器(默认为no,表示不是)

BOOTPROTO=none              IPv4地址的配置使用什么协议(none不使用协议,static静态分配地址,dhcp使用dhcp分配地址)

DEFROUTE=yes                    数据包目的地址不存在时,是否选择默认路由(默认yes,表示会选择默认路由)

IPV4_FAILURE_FATAL=no          是否开启IPv4致命错误检测(默认为no)

IPV6INIT=yes                          是否允许IPv6地址(默认为no,表示禁止IPv6)

IPV6_AUTOCONF=no                IPv6地址是否是自动配置(默认为yes)

IPV6_DEFROUTE=yes                 IPv6默认路由(默认为yes)

IPV6_FAILURE_FATAL=no           是否开启IPv6致命错误检测(默认为no)

IPV6_ADDR_GEN_MODE=stable-privacy  IPv6地址生成模型(默认为stable-privacy)

NAME=ens160                          此网卡配置文件的名称

UUID=f63b96d7-cf29-4afd-890c-5263076313eb   网卡唯一标识码

DEVICE=ens160                         指出此网卡名称

ONBOOT=no                             开机时是否自动启用网卡(默认为no,表示不激活)

IPADDR=192.168.20.1                IPv4地址

PREFIX=24                                 IPv4地址前缀

GATEWAY=192.168.20.254         IPv4网关

DNS1=192.168.20.254                IPv4地址的DNS服务器

IPV6ADDR=2001::1/64               IPv6地址以及其前缀

IPV6_DEFAULTGW=2001::2        IPv6网关

DNS2=2001::2                           IPv6地址的DNS服务器

最简单的配置信息

TYPE=Ethernet      

BOOTPROTO=none

NAME=ens160    

DEVICE=ens160   

ONBOOT=no       

IPADDR=192.168.20.1        

PREFIX=24    

GATEWAY=192.168.20.254

DNS1=192.168.20.254 

通过nmtui命令配置网卡

nmtui是通过图形化界面进行网卡配置的(RHEL 7 8 是nmtui,RHEL 5 6 是setup)

nmcli connection up ens160    配置完成后启用一下网卡

通过nm-connection-editor命令配置网卡

nm-connection-editor               也是通过图形化界面配置网卡

nmcli connection up ens160      配置成功后启用一下网卡


网卡高级配置

配置网络会话

网络会话的功能(可以理解为网卡模板

由于用户在不同的场景下需要手动修改IP地址或者将手动指定为DHCP,比较繁琐,此时就需要配置网络会话功能

通过配置网络会话功能,可以使得用户在多个网卡配置文件中切换来得到不同的IP地址(这些网卡配置文件可以公用一张物理网卡),实现网络配置信息的自由切换

配置网络会话

nmcli connection add con-name home type ethernet ifname ens160

配置网络会话:名字为home,类型为ethernet,自动获取IP地址,使用的物理网卡为ens160

nmcli connection add con-name work ifname ens160 autoconnect no type ethernet ip4 192.168.30.1/24 gw4 192.168.30.254

配置网络会话:名字为work,类型为ethernet,手工指定IP地址和网关,使用的物理网卡为ens160

根据场景启用对应的网络会话

nmcli c u home    启用home网络会话(此时网卡ens160地址就是自动获取的)

nmcli c u work     启用work网络会话(此时网卡ens160地址就是手工指定的)

nmcli c delete work 删除work网络会话

当配置了网络会话之后,会在网卡配置文件下找到ifcfg-网络会话名称的网卡配置文件

启用work网络会话后发现,ens160网卡已经被work网卡模板使用,此时的IP地址也是work配置的IP地址

配置网卡绑定(Bonding)

网卡绑定,将多个网卡绑定同一个IP地址对外提供服务(即将多个网卡虚拟成一个虚拟网卡),可以实现负载均衡和高可用

向系统添加网卡(可以理解为就是添加一个网络会话)

如果发现添加网卡后没有相应的网卡配置信息,可以使用nmcli生成网卡配置信息

nmcli c add con-name ens1921 type ethernet ifname ens192

      con-name     指定网卡配置文件名称

      ifname         指定网卡名称

 为网卡ens192生成类型为ethernet的配置文件,配置文件名为ifconf-ens1921

网卡绑定模式

网卡绑定mode一共有七种(bond0~bond6),常用的有三种

mode=0(balance-rr)   平衡轮询工作模式

所有网卡/链路处于负载状态,要求交换机端配置链路聚合

mode=1(active-backup)主备工作模式

只有一个网卡处于活动状态,当工作的网卡出现故障后,另一个网卡就转为主网卡进行工作

mode=6(balance-alb)  适配器适应性负载模式

所有网卡/链路处于负载状态,不需要交换机端配置链路聚合,是通过ARP协商实现的

其余的模式

mode=2(balance-xor) XOR Hash负载均衡

基于指定的传输Hash策略来传输数据包;和交换机的聚合 强制不协商方式 进行配置

mode=3(broadcast)   广播策略

在所有接slave口上传输每个数据包(一份数据多份传出);和交换机的聚合 强制不协商方式 进行配置

mode=4(802.3ad)

表示支持802.3ad协议,和交换机的聚合LACP方式配合

mdde=5(balance-tlb)

根据每个slave的负载情况选择slave进行发送,接收时使用当前轮到的slave

通过nmcli命令配置网卡绑定

创建绑定网卡以及将物理网卡作为绑定网卡的从属网卡

nmcli c add type bond con-name bond0 ifname bond0 bond.options "mode=balance-rr"

创建类型为bond的网卡,网卡名称为bond0,配置文件名为bond0,网卡绑定模式为balance-rr

nmcli c add type ethernet slave-type bond con-name bond0-port1 ifname ens160 master bond0

将ens160网卡作为绑定网卡band0的从属网卡,绑定后ens160网卡更名为bond0-port1

nmcli c add type ethernet slave-type bond con-name bond0-port2 ifname ens192 master bond0

将ens192网卡作为绑定网卡band0的从属网卡,绑定后ens192网卡更名为bond0-port2

nmcli connetction delete bond0-port1 删除绑定网卡

然后配置绑定网卡(即配置网卡的基本信息)

根据以上方法人选一种,此处选择编辑文件方式

vim /etc/sysconfig/network-scripts/ifconfig-bond0

TYPE=Bond

BOOTPROTO=none

NAME=bond0

DEVICE=bond0

ONBOOT=yes

IPADDR=192.168.100.1

PREFIX=24

GATEWAY=192.168.100.254

DNS1=192.168.100.254

nmcli c d bond0  关闭此网卡

nmcli c u bond0  启用此网卡

查看绑定网卡信息

cat /proc/net/bonding/bond0  查看绑定网卡bond0的详细信息

nm-connection-editor 进行网卡绑定(图形化界面)

nm-connection-editor 进入图形化界面配置

 创建bond网卡,向bond网卡中加入物理网卡

通过编辑文件的方式实现网卡绑定

  此时不需要在各自的单个网卡上配置网卡信息,只需要在bond网卡上配置信息

配置bond0网卡信息

vim /etc/sysconfig/network-scripts/ifconfig-bond0

TYPE=Bond

BOOTPROTO=none

NAME=bond0

DEVICE=bond0

ONBOOT=yes

IPADDR=192.168.100.1

PREFIX=24

GATEWAY=192.168.100.254

DNS1=192.168.100.254

BONDING_OPTS=”mode=0”  配置绑定模式为0

将物理网卡加入绑定网卡

vim /etc/sysconfig/network-scripts/ifcfg-bond0-port1

TYPE=Ethernet

NAME=bond0-port1

UUID=51025336-777b-463b-a1ac-8a7bac314a27

DEVICE=ens160        物理网卡ens160

ONBOOT=yes

MASTER=bond0       绑定网卡名为bond0

SLAVE=yes

vim /etc/sysconfig/network-scripts/ifcfg-bond0-port2

TYPE=Ethernet

NAME=bond0-port2

UUID=a7c6067d-12b2-4abc-a3dc-124a2360009e

DEVICE=ens192         物理网卡ens192

ONBOOT=yes

MASTER=bond0         绑定网卡名为bond0

SLAVE=yes


配置设备主机名

1.直接修改配置文件  vim /etc/hostname

 systemctl restart systemd-hostnamed.service

注意:修改完配置需要重启hostnamed服务

2.使用nmtui修改主机名(图形化界面)

systemctl restart systemd-hostnamed.service

3.hostnamectl修改主机名  永久修改主机名

hostnamectl set-hostname 123   将当前主机名修改为123

注意:该方法需要与hostname相区分 

hostname命令是临时修改 hostnamectl是永久修改主机名

4.nmcli命令修改主机名

nmcli general hostname server1

systemctl restart systemd-hostnamed.service


常用的其它网络信息查看命令

ethtool

主要查看网卡物理层面的转发信息(网卡参数信息等)

命令格式:ethtool [参数] [网卡]

 –i 查询网口的相关信息 
–d 查询网口注册性信息
–r 重置网口到自适应模式
–S 查询ethX网口收发包统计
–s ethX [speed 10|100|1000]  设置网口速率10/100/1000M

route

route 显示当前路由表信息

route add -net 192.168.10.0 netmask 255.255.255.0 dev ens160

 去往192.168.10.0/24网段的路由通过ens160网卡出去

 add    添加路由(del表示删除路由)

 -A     设置地址类型(默认ipv4  配置ipv6地址时:-A inet6)

 -net    到一个网段的路由(到目的网段)

 -host   到一个主机的路由(到目的主机)

 netmask 目的地址的网络掩码

 gw     设置默认网关

 dev    去此目的地址的出接口

 metric  设置路由跳数

ifconfig

ifconfig 【网络设备】 【参数】———查看和配置网卡信息

  up         启动指定网络设备

  down     关闭指定网络设备

   -a         显示全部接口信息

  -s          显示摘要信息(类似于 netstat -i)

  add       给指定网卡配置IP地址

  del        删除指定网卡的IP地址

ifconfig 网卡 hw ether MAC地址     修改该网卡的MAC地址

内容字段含义

第一行

up:                   表示接口已经启用
BROADCAST: 表示主播支持广播
RUNNUNG:    表示接口在工作中
MULTICAST:   表示主播支持多播
MTU:               最大传输单元

第二行
inet:           网卡的IP地址
netmask:    网络掩码
brodcast:    广播地址

第四行
ethernet(以太网) 硬件mac地址

ens160  网卡名称

    在不同系统有不同的名称(可以通过网卡名称大致判断系统类型)

    ens33 (rhel7中的网卡类型)    ens160(rhel8)

  en 代表以太网网卡

  wl  代表无线局域网网卡

  ww 代表无线广域网网卡

补充

 interface config 网络接口配置文件

 环回地址  测试网络连通性

ping

ping 【参数】 目标IP或域名————检查网络是否通畅以及网络连接的速度

通过发送ICMP ECHO_REQUEST数据包到网络主机,并显示响应情况

 -i                 ping的间隔秒数

 -c                ping的次数(Linux的ping不受限,windows会受限4次)

 -I(大写i)  指定网卡名称(也可以指定IP)

 -s                数据包的大小

 -t                 设置TTL为指定值

 -q                不显示任何传送封装包的信息,只显示最后的结果

 -4/-6            使用ipv4还是ipv6

traceroute

traceroute 【参数】 目标IP或域名————检测发出数据包的主机到目标主机之间所经过的网关

具体原理

traceroute是通过试图以最小的TTL发出ICMP探测包,然后监听回应的ICMP的应答,依次来跟踪获取到数据包到达目的主机所经过的网关

发送数据包的大小默认为32字节

参数

 -n        结果显示IP,不显示主机名

 -p        设置UDP传输协议的通信端口

 -V        查看版本信息

 -w        设置等待远端主机回复的超时时间(ms)

 -m        设置检测数据包的最大存活数据TTL的大小

tracepath

tracepath 【参数】目标IP或域名————显示到达目的地的路径信息

工作原理

tracerpath是通过试图以最小的TTL发出UDP数据包,来获得路径信息

与traceroute的作用类似,是简化的路由追踪命令,能够显示每个网关的MTU(最大传输单元)

tracepath与trraceroute的区别

tracepath是使用套接字API来实现所有的功能的,安全,不需要root权限

traceroute是通过操作原始包来实现某些功能,不安全,因此需要root权限

参数

 -n        显示IP,不显示主机名

 -l         初始化包的长度,默认65535

 -b        打印主机名与IP信息(默认只显示主机名)

 -p         指定端口

 -m        设置最大跳跃节点数(默认30)

netstat

netstat 【参数】————显示网络相关信息(网络连接、路由表、接口状态等)

可以查看到本机开启的端口以及有那些客户端连接

 -a 显示所有的网络状态包括(socket程序)

 -t 显示使用tcp协议端口的连接状况

 -u 显示使用udp协议端口的连接状况

 -n 不进行域名解析,不显示域名与服务号,只显示IP和端口号

 -i  显示网卡列表信息

 -l  仅显示正在监听的服务状态

 -r  显示路由信息

 -p 显示建立相关连接的PID和程序名

 -c:持续列出网络状态(实时显示)

foreign address:接收哪些地址访问该端口的数据

nslookup

域名查询工具,查询域名对应的IP地址信息,查询IP地址对应的域名信息

有两种查询方式

交互模式

输入nslookup进入交互模式,此时nslookup会连接到默认的域名服务器(/etc/resolv.conf的第一个dns地址)来进行域名解析

在交互模式下输入域名/IP就可以对该域名/IP进行解析

非交互模式

nslookup 域名/IP        进程解析

获得指定域名/IP的解析结果

arp

通过arp命令可以操作arp缓冲区,显示/删除/添加arp缓冲区中的条目

arp缓冲区缓存的是ip地址与mac地址对应关系

linux中arp缓存表存放在/proc/net/arp中

格式

arp 【参数】 【主机IP地址】 【MAC地址】

arp -a     查看arp缓冲区的所有条目(BSD风格)

arp -e     查看arp缓存区的所有条目(linux风格)

arp -v            显示arp缓存区的详细信息(包括arp表项的统计信息)

arp -n           不解释IP地址为域名,直接输出IP地址(响应更快)

arp -i 网卡名称                                       显示指定网络接口的ARP表项

arp -d IP地址/主机名                              删除该地址对应的arp表项

arp -s IP地址/主机名   MAC地址             添加静态ARP表项

arp -s IP地址/主机名   MAC地址 temp   添加动态ARP表项

arp -Ds   IP地址   网卡名称                     添加静态ARP表项,使用网卡的MAC与该IP地址映射(-D表示使用指定网卡的MAC地址)

字段讲解

Flags

C表示动态ARP-通过ARP响应与应答学到的

M表示静态ARP

P表示通过免费ARP学到的

开启ARP代理

在/proc/sys/net/ipv4/conf/网卡名/proxy_arp 文件下修改

将文件下的0改为1,就表示该网卡开启arp代理

tcpdump

将网络中传送的数据包的“头”完全截获下来提供分析,支持针对网络层、协议、主机、网络或端口的过滤,并提供and、or、not等逻辑语句来帮助去掉无用的信息

命令格式:tcpdump  [参数]

-i :指定监听的网络接口

-v :输出一个稍微详细的信息,例如在ip包中可以包括ttl和服务类型的信息

-vv :输出详细的报文信息

-c :在收到指定的包的数目后,tcpdump就会停止

-e :在输出行打印出数据链路层的头部信息,包括源mac和目的mac,以及网络层的协议

-f :将外部的Internet地址以数字的形式打印出来

-w :直接将包写入文件中,并不分析和打印出来

-s :指定要捕获的数据包长度(0表示不限定长度)

-X  :告诉tcpdump命令,需要把协议头和包内容都原原本本的显示出来(tcpdump会以16进制和ASCII的形式显示)

-nn:不反解主机名和端口号,通过数字的方式显示端口和IP地址

例子

tcpdump -i eth1                                监视指定网络接口的数据包

tcpdump host 210.27.48.3                截获210.27.48.3主机收到的和发出的所有数据包

tcpdump host 210.27.48.4 and (210.27.48.5 or 210.27.48.6)        截获210.27.48.3主机和210.27.48.5或者210.27.48.6主机进行通信的所有数据包

tcpdump src host 10.126.1.222 and dst net 10.126.1.0/24     截获源主地址为10.126.1.222,目的地址是10.126.1.0/24整个网络

tcpdump -i eth0 -s0 -C 1 -Z root -w Packet.pcap                抓取报文后按照指定报文大小保存;-C选项后接文件大小,单位为MB(到达1M后就停止抓包);上述命令就是每抓包文件达到1MB时就使用一个新的文件保存新抓的报文

  • 17
    点赞
  • 156
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

静下心来敲木鱼

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值