1.ifconfig:配置或显示网络接口信息
该命令用于配置网卡IP地址等网络参数或显示当前网络的接口状态,该命令配置网卡信息时必须要以root用户的身份来执行。
参数选项 | 说明 |
up | 激活指定的网络接口 |
down | 关闭指定的网络接口 |
示例:
1)显示当前系统开启的所有网络接口信息
[root@boxiaoyuan ~]# ifconfig eth0 Link encap:Ethernet HWaddr 00:0C:29:DF:9A:A3 inet addr:192.168.13.129 Bcast:192.168.13.255 Mask:255.255.255.0 inet6 addr: fe80::20c:29ff:fedf:9aa3/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:29610 errors:0 dropped:0 overruns:0 frame:0 TX packets:13476 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:28140275 (26.8 MiB) TX bytes:1079738 (1.0 MiB) lo Link encap:Local Loopback inet addr:127.0.0.1 Mask:255.0.0.0 inet6 addr: ::1/128 Scope:Host UP LOOPBACK RUNNING MTU:65536 Metric:1 RX packets:2862 errors:0 dropped:0 overruns:0 frame:0 TX packets:2862 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:971569 (948.7 KiB) TX bytes:971569 (948.7 KiB)
说明:eth0表示第一块网卡,lo表示回环接口。
以eth0为例对每一行进行说明:
第一行:连接类型为Ethernet(以太网),HWaddr为硬件的mac地址。
第二行:网卡的IP地址,广播地址,子网掩码
第三行:IPv6地址配置信息
第四行:UP表示网卡为开启状态,RUNNING表示网卡上的网线为连接状态,MULTICAST表示支持组播, MTU:1500表示最大传输单元为1500字节。
第五、六行:表示网卡接收,发送数据包的统计信息。
第八行:表示网卡接收,发送数据字节数的统计信息。
2.ifup:激活网络接口
该命令用于激活指定的网络接口。
示例:
1)激活指定网络接口
Last login: Fri Apr 12 22:06:05 2019 from 192.168.13.1 [root@inspur ~]# ifup eth0 活跃连接状态:激活中 活跃连接路径:/org/freedesktop/NetworkManager/ActiveConnection/4 状态:激活的 连接被激活
3.ifdown:禁用网络接口
该命令用于进行指定的网络接口。
示例:
1)禁用指定网络接口
[root@inspur 桌面]# ifdown eth0
4.ip:网络配置工具
该命令是iproute软件包中的一个强大的网络配置工具,用于显示或管理Linux系统的路由,网络设备,策略路由和隧道。
语法格式:
ip [option] [object] [command] ip 选项 网络对象 操作命令
参数 | 说明 |
-s | 输出更详细的信息,为了显示更详细的信息,可以重复使用此选项 |
-r | 显示主机时,不使用ip地址,而是主机的域名 |
网络对象 |
指定要管理的网络对象,支持的网络对象如下: link:网络设备 address:设备的协议地址(IP地址) |
help |
ip help:查看ip命令的帮助 ip [object] help:查看指定的网络对象的帮助 |
操作命令 |
对指定的网络对象完成具体的操作,不同的操作对象支持的操作命令不相同,下面给出网络对象支持的常见操作命令: link对象支持的操作命令:set(修改设备属性),show(显示设备属性) address对象支持的操作命令:add(添加IP地址),del(删除IP地址),flush(清除协议地址),show(查看IP地址) |
示例:
1)显示网络设备属性
[root@boxiaoyuan ~]# ip link show dev eth0 # 显示eth0网卡属性 2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000 link/ether 00:0c:29:df:9a:a3 brd ff:ff:ff:ff:ff:ff [root@boxiaoyuan ~]# ip -s link show dev eth0 # 显示eth0网卡详细属性 2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000 link/ether 00:0c:29:df:9a:a3 brd ff:ff:ff:ff:ff:ff RX: bytes packets errors dropped overrun mcast 57930 651 0 0 0 0 TX: bytes packets errors dropped carrier collsns 40879 324 0 0 0 0 [root@boxiaoyaun ~]# ip -s -s link show dev eth0 2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000 link/ether 00:0c:29:df:9a:a3 brd ff:ff:ff:ff:ff:ff RX: bytes packets errors dropped overrun mcast 62130 685 0 0 0 0 RX errors: length crc frame fifo missed 0 0 0 0 0 TX: bytes packets errors dropped carrier collsns 45045 349 0 0 0 0 TX errors: aborted fifo window heartbeat 0 0 0 0
2)关闭和激活网络设备
[root@boxiaoyuan 桌面]# ip link show dev eth0 2: eth0: <BROADCAST,MULTICAST> mtu 1500 qdisc pfifo_fast state DOWN qlen 1000 link/ether 00:0c:29:df:9a:a3 brd ff:ff:ff:ff:ff:ff [root@boxiaoyuan 桌面]# ip link set dev eth0 down [root@boxiaoyuan 桌面]# ip link show dev eth0 2: eth0: <BROADCAST,MULTICAST> mtu 1500 qdisc pfifo_fast state DOWN qlen 1000 link/ether 00:0c:29:df:9a:a3 brd ff:ff:ff:ff:ff:ff [root@boxiaoyuan 桌面]# ip link set dev eth0 up [root@boxiaoyuan 桌面]# ip link show dev eth0 2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000 link/ether 00:0c:29:df:9a:a3 brd ff:ff:ff:ff:ff:ff
3)修改网卡MAC地址
[root@boxiaoyuan ~]# ip link show dev eth0 2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000 link/ether 00:0c:29:df:9a:a3 brd ff:ff:ff:ff:ff:ff [root@boxiaoyuan ~]# ip link set dev eth0 address 00:0c:29:df:9a:11 [root@bixiaoyuan ~]# ip link show dev eth0 2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000 link/ether 00:0c:29:df:9a:11 brd ff:ff:ff:ff:ff:ff
4)查看网卡信息
[root@boxiaoyuan ~]# ip address 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo inet6 ::1/128 scope host valid_lft forever preferred_lft forever 2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000 link/ether 00:0c:29:df:9a:11 brd ff:ff:ff:ff:ff:ff inet 192.168.13.132/24 brd 192.168.13.255 scope global eth0 inet6 fe80::20c:29ff:fedf:9aa3/64 scope link valid_lft forever preferred_lft forever
5)添加或删除IP地址
[root@boxiaoyuan 桌面]# ip address show eth0 2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000 link/ether 00:0c:29:df:9a:11 brd ff:ff:ff:ff:ff:ff inet 192.168.13.132/24 brd 192.168.13.255 scope global eth0 inet6 fe80::20c:29ff:fedf:9aa3/64 scope link valid_lft forever preferred_lft forever [root@boxiaoyuan 桌面]# ip address add 192.168.13.122/24 dev eth0 [root@boxiaoyuan 桌面]# ip address show eth0 2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000 link/ether 00:0c:29:df:9a:11 brd ff:ff:ff:ff:ff:ff inet 192.168.13.132/24 brd 192.168.13.255 scope global eth0 inet 192.168.13.122/24 scope global secondary eth0 inet6 fe80::20c:29ff:fedf:9aa3/64 scope link valid_lft forever preferred_lft forever [root@boxiaoyuan 桌面]# ip address del 192.168.13.132/24 dev eth0 [root@boxiaoyuan 桌面]# ip address show eth0 2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000 link/ether 00:0c:29:df:9a:11 brd ff:ff:ff:ff:ff:ff inet6 fe80::20c:29ff:fedf:9aa3/64 scope link valid_lft forever preferred_lft forever [root@boxiaoyuan 桌面]# ip address add 192.168.13.144/24 dev eth0 [root@boxiaoyuan 桌面]# ip address show eth0 2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000 link/ether 00:0c:29:df:9a:11 brd ff:ff:ff:ff:ff:ff inet 192.168.13.144/24 scope global eth0 inet6 fe80::20c:29ff:fedf:9aa3/64 scope link valid_lft forever preferred_lft forever
说明:删除网卡的主IP地址,同时会删除该网卡的所有IP地址;删除网卡的辅助IP地址,不会影响该网卡的其他IP地址。
5.netstat:查看网络状态
该命令可以显示本机网络的连接状态,运行端口和路由表等信息。
参数 | 说明 |
-n(常用) | 显示数字形式的地址而不是去解析主机,端口号或用户名,默认情况下会去解析主机的主机名 |
-a(常用) | 显示处于监听状态和非监听状态的socket信息 |
-c(常用) | 后面跟的秒数表示每隔几秒就刷新显示一次 |
-l(常用) | 仅显示连接状态为listen的服务的网络状态 |
-t(常用) | 显示所有的TCP连接情况 |
-u(常用) | 显示所有的UDP连接情况 |
-p(常用) | 显示socket所属进程的PID和名称 |
示例:
1)常用选项组合(一)
[root@boxiaoyuan 桌面]# netstat -an # 常用组合-a和-n,显示所有的链接信息
Active Internet connections (servers and established) Proto Recv-Q Send-Q Local Address Foreign Address State tcp 0 0 0.0.0.0:60072 0.0.0.0:* LISTEN tcp 0 0 0.0.0.0:3306 0.0.0.0:* LISTEN tcp 0 0 0.0.0.0:111 0.0.0.0:* LISTEN tcp 0 0 127.0.0.1:8080 0.0.0.0:* LISTEN tcp 0 0 0.0.0.0:83 0.0.0.0:* LISTEN tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN tcp 0 0 127.0.0.1:631 0.0.0.0:* LISTEN tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN
说明:Proto:socket使用的协议(tcp,udp);Recv-Q:接收到但是还没有处理的字节数;Send-Q:已经发送但是未被远程主机确认的字节数;Local Address:本地主机地址和端口;Foreign Address:远程主机的地址和端口;State:socket的状态,通常仅有TCP的状态。
2)常用选项组合(二)
[root@boxiaoyuan ~]# netstat -ntulp # 显示所有TCP和UDP正在监听的连接信息 Active Internet connections (only servers) Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name tcp 0 0 0.0.0.0:60072 0.0.0.0:* LISTEN 2275/rpc.statd tcp 0 0 0.0.0.0:3306 0.0.0.0:* LISTEN 2778/mysqld
6.ss:查看网络状态
该命令类似并将取代netstat命令,它能用来查看网络状态,包括TCP,UDP连接,端口等,它比netstat更高效,如果该命令没有安装,可以使用yum install iproute -y命令进行安装。
参数 | 说明 |
-n | 显示IP地址,不进行DNS解析 |
-a | 显示所有socket连接 |
-l | 显示所有监听socket |
-p | 显示使用socket的进程 |
-t | 仅显示TCP的socket |
-u | 仅显示UDT的socket |
示例:
1)常用选项组合(一)
[root@boxiaoyuan ~]# ss -an # 显示所有的socket连接 State Recv-Q Send-Q Local Address:Port Peer Address:Port LISTEN 0 128 *:60072 *:* LISTEN 0 50 *:3306 *:* LISTEN 0 128 :::36842 :::*
使用column进行格式化
[root@boxiaoyuan ~]# ss -an | column -t State Recv-Q Send-Q Local Address:Port Peer Address:Port LISTEN 0 128 *:60072 *:* LISTEN 0 50 *:3306 *:* LISTEN 0 128 :::36842 :::*
2)常用选项组合(二)
[root@boxiaoyuan ~]# ss -ntulp | column -t # 显示所有正在监听的TCP和UDP连接 Netid State Recv-Q Send-Q Local Address:Port Peer Address:Port udp UNCONN 0 0 *:111 *:* users:(("rpcbind",2208,6)) udp UNCONN 0 0 127.0.0.1:755 *:* users:(("rpc.statd",2275,5)) udp UNCONN 0 0 *:631 *:* users:(("cupsd",2318,9))
7.ping:测试主机之间网络的连通性
该命令用于测试主机之间网络的连通性。
参数 | 说明 |
-c 次数 | 指定发送的ICMP报文的次数 |
-i 时间间隔 | 相邻两次发送报文的时间间隔,默认为1s |
示例:
1)测试到目标主机的网络连通性
[root@boxiaoyuan ~]# ping www.baidu.com PING www.a.shifen.com (61.135.169.121) 56(84) bytes of data. 64 bytes from 61.135.169.121: icmp_seq=1 ttl=128 time=20.9 ms 64 bytes from 61.135.169.121: icmp_seq=2 ttl=128 time=20.5 ms 64 bytes from 61.135.169.121: icmp_seq=3 ttl=128 time=17.4 ms 64 bytes from 61.135.169.121: icmp_seq=4 ttl=128 time=19.1 ms ^C --- www.a.shifen.com ping statistics --- 4 packets transmitted, 4 received, 0% packet loss, time 3737ms rtt min/avg/max/mdev = 17.445/19.522/20.994/1.378 ms
注:本文内容为《跟老男孩学linux运维 核心系统命令实践》的学习笔记。