文章目录网络管理查看网络配置网卡信息查看 link查看 IP查看 route查看 dns测试网络连通性ping 测试mtr 路由跟踪ss 工具配置网络环境准备nmtui 命令自动配置手动配置nmcli 命令网络启停设备控制动态获取静态配置其他操作网络配置文件网络管理查看网络配置网卡信息网卡名称旧名称eth0 eth1 (Ethernet)新名称根据网卡的拓扑类型命名。例如ens32eno4。**linux网络接口传统的名称为eth0 eth1 eth2 …ethN。**然而这种机制会引起一些问题例如网络接口的增加和删除。在rhel7或者更高版本中接口命名规则如下前2个字符Ethernet 接口以en开头WLAN接口以wl开头WWAN接口以ww开头。下一个字符oonboard代表板载设备sslot代表PCI热插拔p代表pci接口网卡。最后N表示index ID或者port。例如eno1代表Ethernet 类型、板载设备、端口号是1的网卡。wlp4s0代表位于PCI总线4上插槽0中的WLAN卡。如果该卡是一个多功能设备具有多个端口或者具有一些其他功能。示例enp0s1f0代表位于PCI总线0上插槽1中的以太网卡的功能0。如果无法分配固定接口名将使用传统方式ethN命名。查看 link关注mac地址。# 查看网络设备清单[rootcentos7 ~]# ip -br linklo UNKNOWN 00:00:00:00:00:00LOOPBACK,UP,LOWER_UPens32 UP 00:0c:29:38:6d:bdBROADCAST,MULTICAST,UP,LOWER_UP......# 查看单个网络设备信息[rootcentos7 ~]# ip link show ens322: ens32:BROADCAST,MULTICAST,UP,LOWER_UPmtu1500qdisc pfifo_fast state UP mode DEFAULT group default qlen1000link/ether 00:0c:29:38:6d:bd brd ff:ff:ff:ff:ff:ff查看 IP关注IP地址和掩码位数10.1.8.10/24。[rootcentos7 ~]# ip -br alo UNKNOWN127.0.0.1/8 ::1/128 ens32 UP10.1.8.10/24 fe80::6763:8ca5:3559:2caa/64[rootcentos7 ~]# ip addr show ens322: ens32:BROADCAST,MULTICAST,UP,LOWER_UPmtu1500qdisc pfifo_fast state UP group default qlen1000link/ether 00:0c:29:38:6d:bd brd ff:ff:ff:ff:ff:ff inet10.1.8.10/24 brd10.1.8.255 scope global noprefixroute ens32 valid_lft forever preferred_lft forever inet6 fe80::6763:8ca5:3559:2caa/64 scopelinknoprefixroute valid_lft forever preferred_lft forever查看 routedefault代表主机的网关也就是10.1.8.2。[rootcentos7 ~]# ip routedefault via10.1.8.2 dev ens32 proto static metric10010.1.8.0/24 dev ens32 proto kernel scopelinksrc10.1.8.10 metric100# 还可以使用以下命令[rootcentos7 ~]# route -n# 或者[rootcentos7 ~]# netstat -nrKernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface0.0.0.010.1.8.20.0.0.0 UG10000ens3210.1.8.00.0.0.0255.255.255.0 U10000ens32192.168.122.00.0.0.0255.255.255.0 U000virbr0说明直连网络10.1.8.0/24和192.168.122.0/24可以 直接通信。其他网络中主机通过默认路由发送到目标这里是default对应的条目也就是10.1.8.2。查看 dns/etc/resolv.conf 文件中nameserver指明服务想哪个DNS服务器查询域名对应IP。[rootcentos7 ~]# cat /etc/resolv.conf# Generated by NetworkManagersearch laoma.cloud nameserver223.5.5.5 nameserver223.6.6.6测试网络连通性ping 测试# ping 测试选项-c控制ping次数选项-w控制ping超时时间[rootcentos7 ~]# ping baidu.com -c 4 -w 2PING baidu.com(110.242.68.66)56(84)bytes of data.64bytes from110.242.68.66(110.242.68.66):icmp_seq1ttl128time34.1ms64bytes from110.242.68.66(110.242.68.66):icmp_seq2ttl128time31.9ms64bytes from110.242.68.66(110.242.68.66):icmp_seq3ttl128time32.9ms64bytes from110.242.68.66(110.242.68.66):icmp_seq4ttl128time32.2ms --- baidu.compingstatistics ---4packets transmitted,4received,0% packet loss,time3006ms rtt min/avg/max/mdev31.985/32.808/34.118/0.839 ms# 说明# 1- 能够解析出ip 说明DNS配置正确# 2- 能ping 通说明我们的网关配置正确mtr 路由跟踪# ping 主机不通此时跟踪路由查看数据最远到达的位置[rootcentos7 ~]# yum install -y mtr[rootcentos7 ~]# mtr -n 1.1.1.1ss 工具/etc/services 文件存储常见端口和服务对应关系。[rootserver ~]# vim /etc/services... ftp-data20/tcp ftp-data20/udp# 21 is registered to ftp, but also used by fspftp21/tcpftp21/udp fsp fspdssh22/tcp# The Secure Shell (SSH) Protocolssh22/udp# The Secure Shell (SSH) Protocoltelnet23/tcp telnet23/udp... domain53/tcp# name-domain serverdomain53/udp... http80/tcp www www-http# WorldWideWeb HTTPhttp80/udp www www-http# HyperText Transfer Protocol... https443/tcp# http protocol over TLS/SSLhttps443/udp# http protocol over TLS/SSL...ss 命令用于查看系统中网络状态信息。以前使用 **netstat **查看网络状态信息使用方法等效与ss命令。# 默认显示是 ESTAB 状态[rootserver ~]# ss | grep :sshtcp ESTAB0010.1.8.10:ssh10.1.8.1:60081 tcp ESTAB03610.1.8.10:ssh10.1.8.1:60229# 只看 LISTEN包含IPv4和IPv6[rootserver ~]# ss -l |grep :sshtcp LISTEN01280.0.0.0:ssh0.0.0.0:* tcp LISTEN0128[::]:ssh[::]:*# 查看 ipv4 所有LISTEN和ESTAB网络状态[rootserver ~]# ss -a4|grep :sshtcp LISTEN01280.0.0.0:ssh0.0.0.0:* tcp ESTAB0010.1.8.10:ssh10.1.8.1:60081 tcp ESTAB03610.1.8.10:ssh10.1.8.1:60229# -n 将服务的名称显示为数字[rootserver ~]# ss -an4|grep :22tcp LISTEN01280.0.0.0:220.0.0.0:* tcp ESTAB0010.1.8.10:2210.1.8.1:60081 tcp ESTAB03610.1.8.10:2210.1.8.1:60229# -p 显示相应的进程[rootserver ~]# ss -lnp4|grep :22tcp LISTEN01280.0.0.0:220.0.0.0:* users:((sshd,pid3186,fd3)模拟环境[rootserver ~]# yum install -y nginx[rootserver ~]# systemctl start nginx.service[rootserver ~]# echo Hello World /usr/share/nginx/html/index.html[rootserver ~]# curl http://10.1.8.10Hello World[rootserver ~]# yum install -y httpd[rootserver ~]# systemctl start httpd[rootserver ~]# systemctl status httpd.service|grep useJul2517:14:47 server.laoma.cloud httpd[14016]:(98)Address alreadyinuse: AH00072: make_sock: could notbindto address[::]:80 Jul2517:14:47 server.laoma.cloud httpd[14016]:(98)Address alreadyinuse: AH00072: make_sock: could notbindto address0.0.0.0:80查找端口被哪个程序使用[rootserver ~]# ss -lnp4|grep :80tcp LISTEN05110.0.0.0:800.0.0.0:* users:((nginx,pid14009,fd6),(nginx,pid14008,fd6),(nginx,pid14007,fd6))解决方法[rootserver ~]# systemctl stop nginx[rootserver ~]# systemctl start httpd配置网络网络配置是由 NetworkManager 服务管理的确保该服务开机自启。环境准备虚拟机新增加一个NAT网卡。自动获取的前提条件是直连的网络中有dhcp服务器。对于 vmware workstationsnmtui 命令自动配置# 服务器配置[rootcentos7 ~]# nmtui使用上下键、tab进行移动回车选中条目。使用方向键下移到最下面返回更改完成后选择启用连接重新激活ens33。手动配置部分截图更改完成后重新激活ens33。**思考**什么情况下用自动配置和手动配置自动配置无静态IP地址需求的其他情况。例如办公环境员工的电脑公共场所无线。手动配置需要一个静态IP地址例如对外提供服务的数据库服务器需要一个静态的IP地址。nmcli 命令网络启停如果网络停用右上角网络链接图标消失。图形化界面效果如下消失前消失后# 停用网络并不会停止 NetworkManager 服务。[rootserver ~]# nmcli networking off# 网卡状态变化activated - deactivating - disconnected - unmanaged - unavailable# 启用网络[rootserver ~]# nmcli networking on# 网卡状态变化unavailable - disconnected - auto-activating设备控制DEVICE是设备也就是网卡。CONNECTION是连接也就是网卡的配置。一个 DEVICE 可以有多个配置同一时刻只能激活一个配置。# 显示设备列表状态信息[rootserver ~]# nmcli deviceDEVICE TYPE STATE CONNECTION ens160 ethernet 已连接 ens160 ens192 ethernet 已连接 ens192 virbr0 bridge 未托管 -- lo loopback 未托管 --# 断开设备链接[rootserver ~]# nmcli device disconnect ens192成功断开设备ens192。[rootserver ~]# nmcli deviceDEVICE TYPE STATE CONNECTION ens160 ethernet 已连接 ens160 ens192 ethernet 已断开 -- virbr0 bridge 未托管 -- lo loopback 未托管 --# 连接设备[rootserver ~]# nmcli device connect ens192成功用ens1920f5eac2c-9a92-494e-9cca-f97230d2314a激活了设备。[rootserver ~]# nmcli deviceDEVICE TYPE STATE CONNECTION ens160 ethernet 已连接 ens160 ens192 ethernet 已连接 ens192 virbr0 bridge 未托管 -- lo loopback 未托管 --# 显示特定设备详细信息[rootserver ~]# nmcli device show ens192GENERAL.DEVICE: ens192 GENERAL.TYPE: ethernet GENERAL.HWADDR: 00:0C:29:08:CF:C7 GENERAL.MTU:1500GENERAL.STATE:100已连接 GENERAL.CONNECTION: ens192 GENERAL.CON-PATH:/org/freedesktop/NetworkManager/ActiveConnection/15 WIRED-PROPERTIES.CARRIER: 开 IP4.ADDRESS[1]:10.1.8.10/24 IP4.GATEWAY:10.1.8.2 IP4.ROUTE[1]: dst10.1.8.0/24, nh0.0.0.0, mt101IP4.ROUTE[2]: dst0.0.0.0/0, nh10.1.8.2, mt101IP4.DNS[1]:223.5.5.5 IP4.DNS[2]:114.114.114.114 IP6.ADDRESS[1]: fe80::20c:29ff:fe08:cfc7/64 IP6.GATEWAY: -- IP6.ROUTE[1]: dstfe80::/64, nh::, mt256[rootserver ~]# nmcli device show ens192 | grep IP4IP4.ADDRESS[1]:10.1.8.10/24 IP4.GATEWAY:10.1.8.2 IP4.ROUTE[1]: dst10.1.8.0/24, nh0.0.0.0, mt101IP4.ROUTE[2]: dst0.0.0.0/0, nh10.1.8.2, mt101IP4.DNS[1]:223.5.5.5 IP4.DNS[2]:114.114.114.114动态获取# 查看connection清单[rootserver ~]# nmcli connectionNAME UUID TYPE DEVICE ens160 5f61d96b-a284-41e9-9bf6-5cf3de6250cd ethernet ens160 ens192 0f5eac2c-9a92-494e-9cca-f97230d2314a ethernet ens192# 删除连接[rootserver ~]# nmcli connection delete ens192成功删除连接ens192(0f5eac2c-9a92-494e-9cca-f97230d2314a)。[rootserver ~]# nmcli connectionNAME UUID TYPE DEVICE ens160 5f61d96b-a284-41e9-9bf6-5cf3de6250cd ethernet ens160# 添加网卡配置自动获取IP地址[rootserver ~]# nmcli connection add type ethernet ifname ens192 con-name ens192-dynamic连接ens192-dynamic(27d7dd0a-a5d1-4ed8-81ad-1051f89f89d1)已成功添加。[rootserver ~]# nmcli connection showNAME UUID TYPE DEVICE ens160 5f61d96b-a284-41e9-9bf6-5cf3de6250cd ethernet ens160 ens192-dynamic 27d7dd0a-a5d1-4ed8-81ad-1051f89f89d1 ethernet ens192[rootserver ~]# nmcli connection show ens192-dynamicconnection.id: ens192-dynamic connection.uuid: 27d7dd0a-a5d1-4ed8-81ad-1051f89f89d1 connection.stable-id: -- connection.type:802-3-ethernet connection.interface-name: ens192... ipv4.method: auto... ipv6.method: auto...# 修改配置指定获取IP方式[rootserver ~]# nmcli connection modify ens192-dynamic ipv4.method auto# 激活配置[rootserver ~]# nmcli connection up ens192-dynamic连接已成功激活D-Bus 活动路径/org/freedesktop/NetworkManager/ActiveConnection/18静态配置# 添加一个静态配置的连接[rootserver ~]# nmcli connection add type ethernet ifname ens192 con-name ens192-static ipv4.method manual ipv4.addresses 10.1.8.10/24连接ens192-static(652c8436-ac91-4697-b4ad-43d8dac83f8f)已成功添加。# 修改 ipv4 相关属性[rootserver ~]# nmcli connection modify ens192-static ipv4.gateway 10.1.8.2 ipv4.dns 10.1.8.2# 激活连接[rootserver ~]# nmcli connection up ens192-static连接已成功激活D-Bus 活动路径/org/freedesktop/NetworkManager/ActiveConnection/19# 查看状态[rootserver ~]# nmcli connectionNAME UUID TYPE DEVICE ens160 5f61d96b-a284-41e9-9bf6-5cf3de6250cd ethernet ens160 ens192-static 652c8436-ac91-4697-b4ad-43d8dac83f8f ethernet ens192 ens192-dynamic 27d7dd0a-a5d1-4ed8-81ad-1051f89f89d1 ethernet --其他操作# 停用连接[rootserver ~]# nmcli connection down ens192-static成功停用连接ens192-staticD-Bus 活动路径/org/freedesktop/NetworkManager/ActiveConnection/20[rootserver ~]# nmcli connection showNAME UUID TYPE DEVICE ens160 5f61d96b-a284-41e9-9bf6-5cf3de6250cd ethernet ens160 ens192-dynamic 27d7dd0a-a5d1-4ed8-81ad-1051f89f89d1 ethernet ens192 ens192-static 652c8436-ac91-4697-b4ad-43d8dac83f8f ethernet --# 根据需要配置路由[rootserver ~]# nmcli connection modify ens192-static ipv4.routes 192.168.50.0/24 10.1.8.2网络配置文件**提示**尽量不要通过手动修改配置来配置网络。# 动态配置[rootserver ~]# cat /etc/sysconfig/network-scripts/ifcfg-ens192-dynamicTYPEEthernetPROXY_METHODnoneBROWSER_ONLYnoBOOTPROTOdhcpDEFROUTEyesIPV4_FAILURE_FATALnoIPV6INITyesIPV6_AUTOCONFyesIPV6_DEFROUTEyesIPV6_FAILURE_FATALnoIPV6_ADDR_GEN_MODEdefaultNAMEens192-dynamicUUID27d7dd0a-a5d1-4ed8-81ad-1051f89f89d1DEVICEens192ONBOOTyes# 静态配置[rootserver ~]# cat /etc/sysconfig/network-scripts/ifcfg-ens192-staticTYPEEthernetPROXY_METHODnoneBROWSER_ONLYnoBOOTPROTOnoneIPADDR10.1.8.10PREFIX24DEFROUTEyesIPV4_FAILURE_FATALnoIPV6INITyesIPV6_AUTOCONFyesIPV6_DEFROUTEyesIPV6_FAILURE_FATALnoIPV6_ADDR_GEN_MODEdefaultNAMEens192-staticUUID652c8436-ac91-4697-b4ad-43d8dac83f8fDEVICEens192ONBOOTyesGATEWAY10.1.8.2DNS110.1.8.2# 某个网卡的路由配置[rootserver ~]# cat /etc/sysconfig/network-scripts/route-ens192-staticADDRESS0192.168.50.0NETMASK0255.255.255.0GATEWAY010.1.8.2手动修改配置文件后续需要重新加载才能生效[rootserver ~]# nmcli connection reload[rootserver ~]# nmcli connection up ens192-static
