1、主要内容命令属性作用netplan配置翻译官定义网卡、IP、路由、网关的永久规则netstat状态体检师查看路由表、端口、连接状态route临时修改器直接改内核路由表ifconfig零时修改网卡 IP、MAC、启停网卡NetworkManager( nmcli / nmtui )永久配置系统网络管理服务2、网络接口配置ifconfig主要是配置网卡用来配置网卡ifconfig是你临时看一眼或改一下网络状态的“小工具”。ifconfig //查看网卡信息 //启用eth0网卡并设置默认IP地址 sudo ifconfig eth0 192.168.1.14 netmask 255.255.255.0 up //关闭网卡 sudo ifconfig eth0 down3、网络管家 NetworkManager 1配置网络时效永久的NetworkManager是帮你永久搞定网络配置的“大管家”。2nmtui是终端图形化网卡配置工具也就是桌面通过设置配置WiFi界面。底层还是调用nmcli3相关的配置文件在 /etc/NetworkManager/system-connections 目录下。nmcli connection modify ens33 ipv4.addresses 192.168.1.100/24 //修改ip地址 nmcli connection modify ens33 ipv4.gateway 192.168.1.1 //修改网关地址 nmcli connection modify ens33 ipv4.dns 255.255.255.0 //修改子网掩码 nmcli connection modify ens33 ipv4.method manual //手动ip地址如果不写还是自动 nmcli connection up ens33 //启动用网卡 一条指令运行 nmcli connection modify ens33 \ ipv4.addresses 192.168.1.100/24 \ ipv4.gateway 192.168.1.1 \ ipv4.dns 223.5.5.5 \ ipv4.method manual connection modify 修改已存在的网卡连接配置档案 ipv4.method auto //自动获取ip地址 ipv4.method manual //手动获取ip地址4、内核路由表配置 route 主要用来添加路由表也就是路由转发配置网络包的下一跳。查看路由表 route -n //查看路由表 route add //添加路由 route del //删除网卡 netstat -r //查看路由表 //添加路由全网段 #将路由表中没有匹配规则的包走10.71.84.2这台设备 sudo route add default gw 10.71.84.2 #将发给10.62.74.×的包转发给10.71.84.51设备 sudo route add -net 10.62.74.0/24 gw 10.71.84.51 //添加指定路由 sudo route add -host 10.62.74.4 gw 10.71.84.51 sudo route add -host 10.62.74.4 gw 10.71.84.51 eth0命令中的gw就是指的Geteway字段配置网络包转发的下一跳的设备地址。kickpikickpi:~$ route -n Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface 0.0.0.0 192.168.31.1 0.0.0.0 UG 600 0 0 wlan0 169.254.0.0 0.0.0.0 255.255.0.0 U 1000 0 0 wlan0 192.168.1.0 0.0.0.0 255.255.255.0 U 100 0 0 eth0 192.168.31.0 0.0.0.0 255.255.255.0 U 600 0 0 wlan0 Destination目标网段 Gateway下一跳网关0.0.0.0 代表同网段直连无需网关转发 //就是gw Genmask子网掩码配合 Destination 划定网段范围 Flags 标识 UUp这条路由规则生效可用 GGateway该路由需要经过网关转发跨网段 Metric路由优先级数字越小优先级越高多网卡时用来选出口 Iface数据包从本机哪张网卡发出5、检查网络状态netstatnetstat 主要查看网络状态但是也比较老了现代化命令是 ss-a # all显示所有连接监听已建立 -t # tcp 协议端口 -u # udp 协议端口 -n # numeric不解析域名/主机名只显示数字IP提速 -l # listen只看正在监听的端口服务端口 -p # program显示占用端口的进程PID程序名root才能看 -r # 查看路由表等价 route 命令 -i # 网卡流量统计 1. 查看所有正在监听的 TCP 端口最常用 netstat -tlnp 输出字段协议、本地地址端口、状态、PID / 程序名 用来查哪个程序占用 80/22/8080 端口。 2、查看路由表 netstat -r 3、查看网卡转发流量统计 netstat -i 4. 看所有 TCP/UDP 连接包括外部连接 netstat -antp 5. 只看 UDP 监听端口 netstat -ulnp6、配置翻译官netplan除了NetworkManager配置网络外这是另一种更改网络配置的方式永久有效底层也是调用了nmcli来处理。主要配置文件/etc/netplan/***.yaml 文件名以 .yaml 结尾的文件//执行文件 tiantian-hang:~$ cd /etc/netplan ls 01-network-manager-all.yaml //执行命令理解为将01-network-manager-all.yaml文件交给NetworkManager执行 sudo netplan apply tiantian-hang:/etc/netplan$ cat 01-network-manager-all.yaml # Let NetworkManager manage all devices on this system network: version: 2 renderer: NetworkManager7、总结我们日常使用nmcli命令来配置WiFi和检查连接。1查看详细连接信息nmcli connection show 或 nmcli connection show eth02连接WiFi替换成你的WiFi名和密码sudo nmcli dev wifi connect TSK_TH password 12345678 ifname wlan03检查WiFi连接情况nmcli -s4修改DNSnmcli c modify eth0 ipv4.dns 223.5.5.5,114.114.114.114//查看wifi是否连接 kickpikickpi:~$ nmcli connection show NAME UUID TYPE DEVICE TSK 8441399f-cf8d-410d-947f-753de58d81f3 wifi wlan0 eth0 b01c2b99-fe76-4be5-9dc6-abf199e7f673 ethernet eth0 402 9616bcfe-2086-4cef-ad79-67959f5ae987 wifi -- AAW 3f1cdcea-7eec-4c56-bfd8-849b8b63e32b wifi -- netplan-eth0 626dd384-8b3d-3690-9511-192b2c79b3fd ethernet -- TSK_TH a7f2b7d7-c385-4c11-a31f-e4dbff6fac7b wifi -- // 连接WiFi替换成你的WiFi名和密码 sudo nmcli dev wifi connect TSK_TH password 12345678 ifname wlan0 //检查WiFi连接情况 kickpikickpi:~$ nmcli -s wlan0: connected to TSK wlan0 wifi (aicwf_sdio), 44:49:66:F3:E5:7E, hw, mtu 1500 ip4 default inet4 192.168.31.224/24 route4 default via 192.168.31.1 metric 600 route4 169.254.0.0/16 metric 1000 route4 192.168.31.0/24 metric 600 inet6 fe80::fe0e:23b:aded:ea8c/64 route6 fe80::/64 metric 1024 eth0: connected to eth0 eth0 ethernet (sunxi-gmac), 92:2F:32:30:7B:7B, hw, mtu 1500 inet4 192.168.1.14/24 route4 192.168.1.0/24 metric 100 p2p-dev-wlan0: disconnected p2p-dev-wlan0 wifi-p2p, hw dummy0: unmanaged dummy0 dummy, 8A:E5:59:3E:E9:30, sw, mtu 1500 lo: unmanaged lo loopback (unknown), 00:00:00:00:00:00, sw, mtu 65536 DNS configuration: servers: 192.168.31.1 interface: wlan0 //eth0连接情况 kickpikickpi:~$ nmcli connection show eth0 connection.id: eth0 connection.uuid: b01c2b99-fe76-4be5-9dc6-abf199e7f673 connection.stable-id: -- connection.type: 802-3-ethernet connection.interface-name: eth0 connection.autoconnect: no connection.autoconnect-priority: 0 connection.autoconnect-retries: -1 (default) connection.multi-connect: 0 (default) connection.auth-retries: -1 connection.timestamp: 1780970861 connection.read-only: no connection.permissions: -- connection.zone: -- connection.master: -- connection.slave-type: -- connection.autoconnect-slaves: -1 (default) connection.secondaries: -- connection.gateway-ping-timeout: 0 connection.metered: unknown connection.lldp: default connection.mdns: -1 (default) connection.llmnr: -1 (default) connection.dns-over-tls: -1 (default) connection.wait-device-timeout: -1 802-3-ethernet.port: -- 802-3-ethernet.speed: 0 802-3-ethernet.duplex: -- 802-3-ethernet.auto-negotiate: no 802-3-ethernet.mac-address: 92:2F:32:30:7B:7B 802-3-ethernet.cloned-mac-address: -- 802-3-ethernet.generate-mac-address-mask:-- 802-3-ethernet.mac-address-blacklist: -- 802-3-ethernet.mtu: auto 802-3-ethernet.s390-subchannels: -- 802-3-ethernet.s390-nettype: -- 802-3-ethernet.s390-options: -- 802-3-ethernet.wake-on-lan: default 802-3-ethernet.wake-on-lan-password: -- 802-3-ethernet.accept-all-mac-addresses:-1 (default) ipv4.method: manual ipv4.dns: -- ipv4.dns-search: -- ipv4.dns-options: -- ipv4.dns-priority: 0 ipv4.addresses: 192.168.1.14/24 ipv4.gateway:8、附录 | nmcli命令详解nmcli c xxx→ 操作配置文件改 IP、DNS、开机自启nmcli d xxx→ 操作物理网卡硬件开关网口、查看硬件信息修改静态 IP、DHCP 全部用c modify不要用 device 对象参数作用实操例子-p --pretty格式化美观输出分行展示详细配置nmcli -p c show eth0-t --terse极简输出、无表头方便管道过滤nmcli -t c show-f --fields指定只输出你想要的字段nmcli -f NAME,DEVICE c show-g --get-values只输出字段值纯文本脚本专用nmcli -g ipv4.addresses c show eth0-s --show-secrets查看 WiFi 密码等明文密钥nmcli -s c show TSK-w 数字设置操作超时时间秒nmcli -w 10 c up eth0-v打印版本nmcli -vkickpikickpi:~$ nmcli -help Usage: nmcli [OPTIONS] OBJECT { COMMAND | help } OPTIONS -a, --ask ask for missing parameters -c, --colors auto|yes|no whether to use colors in output -e, --escape yes|no escape columns separators in values -f, --fields field,...|all|common specify fields to output -g, --get-values field,...|all|common shortcut for -m tabular -t -f -h, --help print this help -m, --mode tabular|multiline output mode -o, --overview overview mode -p, --pretty pretty output -s, --show-secrets allow displaying passwords -t, --terse terse output -v, --version show program version -w, --wait seconds set timeout waiting for finishing operations OBJECT g[eneral] NetworkManagers general status and operations n[etworking] overall networking control r[adio] NetworkManager radio switches c[onnection] NetworkManagers connections d[evice] devices managed by NetworkManager a[gent] NetworkManager secret agent or polkit agent m[onitor] monitor NetworkManager changes1c[onnection]连接配置最常用简写 c# 列出所有配置档案 nmcli c show # 查看单条配置详情 nmcli c show eth0 # 修改IP/网关/DNS nmcli c modify eth0 ipv4.method manual # 启用网卡配置生效新IP nmcli c up eth0 # 断开网卡 nmcli c down eth0 # 删除无用配置 nmcli c delete netplan-eth02d[evice]物理硬件网卡简写 d# 查看所有网卡硬件状态 nmcli d status # 查看eth0硬件完整信息 nmcli d show eth0 # 关闭物理网卡 nmcli d disconnect eth0 # 重新扫描网卡 nmcli d reapply eth03n[etworking]总网络开关简写 n# 关闭所有网络断网 nmcli n off # 开启所有网络 nmcli n on # 查看网络总开关状态 nmcli n connectivity
Linux基础知识(二)
1、主要内容命令属性作用netplan配置翻译官定义网卡、IP、路由、网关的永久规则netstat状态体检师查看路由表、端口、连接状态route临时修改器直接改内核路由表ifconfig零时修改网卡 IP、MAC、启停网卡NetworkManager( nmcli / nmtui )永久配置系统网络管理服务2、网络接口配置ifconfig主要是配置网卡用来配置网卡ifconfig是你临时看一眼或改一下网络状态的“小工具”。ifconfig //查看网卡信息 //启用eth0网卡并设置默认IP地址 sudo ifconfig eth0 192.168.1.14 netmask 255.255.255.0 up //关闭网卡 sudo ifconfig eth0 down3、网络管家 NetworkManager 1配置网络时效永久的NetworkManager是帮你永久搞定网络配置的“大管家”。2nmtui是终端图形化网卡配置工具也就是桌面通过设置配置WiFi界面。底层还是调用nmcli3相关的配置文件在 /etc/NetworkManager/system-connections 目录下。nmcli connection modify ens33 ipv4.addresses 192.168.1.100/24 //修改ip地址 nmcli connection modify ens33 ipv4.gateway 192.168.1.1 //修改网关地址 nmcli connection modify ens33 ipv4.dns 255.255.255.0 //修改子网掩码 nmcli connection modify ens33 ipv4.method manual //手动ip地址如果不写还是自动 nmcli connection up ens33 //启动用网卡 一条指令运行 nmcli connection modify ens33 \ ipv4.addresses 192.168.1.100/24 \ ipv4.gateway 192.168.1.1 \ ipv4.dns 223.5.5.5 \ ipv4.method manual connection modify 修改已存在的网卡连接配置档案 ipv4.method auto //自动获取ip地址 ipv4.method manual //手动获取ip地址4、内核路由表配置 route 主要用来添加路由表也就是路由转发配置网络包的下一跳。查看路由表 route -n //查看路由表 route add //添加路由 route del //删除网卡 netstat -r //查看路由表 //添加路由全网段 #将路由表中没有匹配规则的包走10.71.84.2这台设备 sudo route add default gw 10.71.84.2 #将发给10.62.74.×的包转发给10.71.84.51设备 sudo route add -net 10.62.74.0/24 gw 10.71.84.51 //添加指定路由 sudo route add -host 10.62.74.4 gw 10.71.84.51 sudo route add -host 10.62.74.4 gw 10.71.84.51 eth0命令中的gw就是指的Geteway字段配置网络包转发的下一跳的设备地址。kickpikickpi:~$ route -n Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface 0.0.0.0 192.168.31.1 0.0.0.0 UG 600 0 0 wlan0 169.254.0.0 0.0.0.0 255.255.0.0 U 1000 0 0 wlan0 192.168.1.0 0.0.0.0 255.255.255.0 U 100 0 0 eth0 192.168.31.0 0.0.0.0 255.255.255.0 U 600 0 0 wlan0 Destination目标网段 Gateway下一跳网关0.0.0.0 代表同网段直连无需网关转发 //就是gw Genmask子网掩码配合 Destination 划定网段范围 Flags 标识 UUp这条路由规则生效可用 GGateway该路由需要经过网关转发跨网段 Metric路由优先级数字越小优先级越高多网卡时用来选出口 Iface数据包从本机哪张网卡发出5、检查网络状态netstatnetstat 主要查看网络状态但是也比较老了现代化命令是 ss-a # all显示所有连接监听已建立 -t # tcp 协议端口 -u # udp 协议端口 -n # numeric不解析域名/主机名只显示数字IP提速 -l # listen只看正在监听的端口服务端口 -p # program显示占用端口的进程PID程序名root才能看 -r # 查看路由表等价 route 命令 -i # 网卡流量统计 1. 查看所有正在监听的 TCP 端口最常用 netstat -tlnp 输出字段协议、本地地址端口、状态、PID / 程序名 用来查哪个程序占用 80/22/8080 端口。 2、查看路由表 netstat -r 3、查看网卡转发流量统计 netstat -i 4. 看所有 TCP/UDP 连接包括外部连接 netstat -antp 5. 只看 UDP 监听端口 netstat -ulnp6、配置翻译官netplan除了NetworkManager配置网络外这是另一种更改网络配置的方式永久有效底层也是调用了nmcli来处理。主要配置文件/etc/netplan/***.yaml 文件名以 .yaml 结尾的文件//执行文件 tiantian-hang:~$ cd /etc/netplan ls 01-network-manager-all.yaml //执行命令理解为将01-network-manager-all.yaml文件交给NetworkManager执行 sudo netplan apply tiantian-hang:/etc/netplan$ cat 01-network-manager-all.yaml # Let NetworkManager manage all devices on this system network: version: 2 renderer: NetworkManager7、总结我们日常使用nmcli命令来配置WiFi和检查连接。1查看详细连接信息nmcli connection show 或 nmcli connection show eth02连接WiFi替换成你的WiFi名和密码sudo nmcli dev wifi connect TSK_TH password 12345678 ifname wlan03检查WiFi连接情况nmcli -s4修改DNSnmcli c modify eth0 ipv4.dns 223.5.5.5,114.114.114.114//查看wifi是否连接 kickpikickpi:~$ nmcli connection show NAME UUID TYPE DEVICE TSK 8441399f-cf8d-410d-947f-753de58d81f3 wifi wlan0 eth0 b01c2b99-fe76-4be5-9dc6-abf199e7f673 ethernet eth0 402 9616bcfe-2086-4cef-ad79-67959f5ae987 wifi -- AAW 3f1cdcea-7eec-4c56-bfd8-849b8b63e32b wifi -- netplan-eth0 626dd384-8b3d-3690-9511-192b2c79b3fd ethernet -- TSK_TH a7f2b7d7-c385-4c11-a31f-e4dbff6fac7b wifi -- // 连接WiFi替换成你的WiFi名和密码 sudo nmcli dev wifi connect TSK_TH password 12345678 ifname wlan0 //检查WiFi连接情况 kickpikickpi:~$ nmcli -s wlan0: connected to TSK wlan0 wifi (aicwf_sdio), 44:49:66:F3:E5:7E, hw, mtu 1500 ip4 default inet4 192.168.31.224/24 route4 default via 192.168.31.1 metric 600 route4 169.254.0.0/16 metric 1000 route4 192.168.31.0/24 metric 600 inet6 fe80::fe0e:23b:aded:ea8c/64 route6 fe80::/64 metric 1024 eth0: connected to eth0 eth0 ethernet (sunxi-gmac), 92:2F:32:30:7B:7B, hw, mtu 1500 inet4 192.168.1.14/24 route4 192.168.1.0/24 metric 100 p2p-dev-wlan0: disconnected p2p-dev-wlan0 wifi-p2p, hw dummy0: unmanaged dummy0 dummy, 8A:E5:59:3E:E9:30, sw, mtu 1500 lo: unmanaged lo loopback (unknown), 00:00:00:00:00:00, sw, mtu 65536 DNS configuration: servers: 192.168.31.1 interface: wlan0 //eth0连接情况 kickpikickpi:~$ nmcli connection show eth0 connection.id: eth0 connection.uuid: b01c2b99-fe76-4be5-9dc6-abf199e7f673 connection.stable-id: -- connection.type: 802-3-ethernet connection.interface-name: eth0 connection.autoconnect: no connection.autoconnect-priority: 0 connection.autoconnect-retries: -1 (default) connection.multi-connect: 0 (default) connection.auth-retries: -1 connection.timestamp: 1780970861 connection.read-only: no connection.permissions: -- connection.zone: -- connection.master: -- connection.slave-type: -- connection.autoconnect-slaves: -1 (default) connection.secondaries: -- connection.gateway-ping-timeout: 0 connection.metered: unknown connection.lldp: default connection.mdns: -1 (default) connection.llmnr: -1 (default) connection.dns-over-tls: -1 (default) connection.wait-device-timeout: -1 802-3-ethernet.port: -- 802-3-ethernet.speed: 0 802-3-ethernet.duplex: -- 802-3-ethernet.auto-negotiate: no 802-3-ethernet.mac-address: 92:2F:32:30:7B:7B 802-3-ethernet.cloned-mac-address: -- 802-3-ethernet.generate-mac-address-mask:-- 802-3-ethernet.mac-address-blacklist: -- 802-3-ethernet.mtu: auto 802-3-ethernet.s390-subchannels: -- 802-3-ethernet.s390-nettype: -- 802-3-ethernet.s390-options: -- 802-3-ethernet.wake-on-lan: default 802-3-ethernet.wake-on-lan-password: -- 802-3-ethernet.accept-all-mac-addresses:-1 (default) ipv4.method: manual ipv4.dns: -- ipv4.dns-search: -- ipv4.dns-options: -- ipv4.dns-priority: 0 ipv4.addresses: 192.168.1.14/24 ipv4.gateway:8、附录 | nmcli命令详解nmcli c xxx→ 操作配置文件改 IP、DNS、开机自启nmcli d xxx→ 操作物理网卡硬件开关网口、查看硬件信息修改静态 IP、DHCP 全部用c modify不要用 device 对象参数作用实操例子-p --pretty格式化美观输出分行展示详细配置nmcli -p c show eth0-t --terse极简输出、无表头方便管道过滤nmcli -t c show-f --fields指定只输出你想要的字段nmcli -f NAME,DEVICE c show-g --get-values只输出字段值纯文本脚本专用nmcli -g ipv4.addresses c show eth0-s --show-secrets查看 WiFi 密码等明文密钥nmcli -s c show TSK-w 数字设置操作超时时间秒nmcli -w 10 c up eth0-v打印版本nmcli -vkickpikickpi:~$ nmcli -help Usage: nmcli [OPTIONS] OBJECT { COMMAND | help } OPTIONS -a, --ask ask for missing parameters -c, --colors auto|yes|no whether to use colors in output -e, --escape yes|no escape columns separators in values -f, --fields field,...|all|common specify fields to output -g, --get-values field,...|all|common shortcut for -m tabular -t -f -h, --help print this help -m, --mode tabular|multiline output mode -o, --overview overview mode -p, --pretty pretty output -s, --show-secrets allow displaying passwords -t, --terse terse output -v, --version show program version -w, --wait seconds set timeout waiting for finishing operations OBJECT g[eneral] NetworkManagers general status and operations n[etworking] overall networking control r[adio] NetworkManager radio switches c[onnection] NetworkManagers connections d[evice] devices managed by NetworkManager a[gent] NetworkManager secret agent or polkit agent m[onitor] monitor NetworkManager changes1c[onnection]连接配置最常用简写 c# 列出所有配置档案 nmcli c show # 查看单条配置详情 nmcli c show eth0 # 修改IP/网关/DNS nmcli c modify eth0 ipv4.method manual # 启用网卡配置生效新IP nmcli c up eth0 # 断开网卡 nmcli c down eth0 # 删除无用配置 nmcli c delete netplan-eth02d[evice]物理硬件网卡简写 d# 查看所有网卡硬件状态 nmcli d status # 查看eth0硬件完整信息 nmcli d show eth0 # 关闭物理网卡 nmcli d disconnect eth0 # 重新扫描网卡 nmcli d reapply eth03n[etworking]总网络开关简写 n# 关闭所有网络断网 nmcli n off # 开启所有网络 nmcli n on # 查看网络总开关状态 nmcli n connectivity