网络相关命令
- 查看及测试网络配置是管理 Linux 网络服务的第一步,大多数命令以普通用户权限就可以完成操作,但普通用户在执行/sbin/目录中的命令时需要指定命令文件的绝对路径
一、网络套装工具
1、iproute2套装工具
- 工具地址:(系统默认已经安装了软件包)
#官方地址
http://www.linuxgrill.com/anonymous/iproute2/NEW-OSDL/
https://mirrors.edge.kernel.org/pub/linux/utils/net/iproute2/
2、net-tools套装工具
#通过yum安装
[root@CentOS7-4 ~]# yum -y install net-tools
iproute2 套装工具命令 | net-tools套装工具命令 | 说明 |
---|---|---|
ip addr | ifconfig | 查看网卡信息,IP 、MAC 等 |
ip neigh | arp | 查看arp 缓存 |
ip -s link | ifconfig -s | 查看查看网卡收发数据包的大小(RX:收、TX:发) |
ip addr add 192.168.100.100/24 dev ens33 | ifconfig add ens33 192.168.100.100/24 | 为ens33 网卡添加一个临时的IP 地址 |
ip addr del 192.168.100.100/24 dev ens33 | ifconfig del ens33 192.168.100.100/24 | 为ens33 网卡删除一个IP 地址 |
ip route | route -n netstat -r | 查看路由表 |
ip route add 192.168.30.0/24 via 192.168.188.2 | route add -net 192.168.50.0/24 gw 192.168.188.5 | 添加路由条目 |
ip route del 192.168.30.0/24 via 192.168.188.2 | route del -net 192.168.50.0/24 gw 192.168.188.5 | 删除路由条目 |
route add default gw 192.168.188.2 | 添加默认路由 |
二、网络相关命令
1、查看及测试网络
ifconfig
命令(查看已启用的网络接口信息)
[root@CentOS7-4 ~]# ifconfig
ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.25.130 netmask 255.255.255.0 broadcast 192.168.25.255
inet6 fe80::fda6:6bd9:e8be:4183 prefixlen 64 scopeid 0x20<link>
ether 00:0c:29:b6:ef:bb txqueuelen 1000 (Ethernet)
RX packets 42469 bytes 36131981 (34.4 MiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 20189 bytes 2392378 (2.2 MiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10<host>
loop txqueuelen 1000 (Local Loopback)
RX packets 39 bytes 3304 (3.2 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 39 bytes 3304 (3.2 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
#如果想要查看指定网卡信息,直接再后面跟上网卡名字
[root@CentOS7-4 ~]# ifconfig ens33
-
ens33
:第一块以太网卡的名称,“ en ” 是 “EtherNet
”,“ s ” 表示热插拔设备,“ 33 ” 表示插槽编号 -
lo:“回环”网络接口,“lo”是“loopback”的缩写,它不代表真正的网络接口,而是一个虚拟的网络接口,其
IP
地址默认是“127.0.0.1”。回环地址通常仅用于对本机的网络测试。 -
hostname
命令(查看主机名称)
[root@CentOS7-4 ~]# hostname
CentOS7-4
netstat
命令(查看网络连接情况 )
-a:显示当前主机中所有活动的网络连接信息(包括监听、非监听状态的服务端口)。
-n:以数字的形式显示相关的主机地址、端口等信息。
-r:显示路由表信息。
-l:显示处于监听(Listening)状态的网络连接及端口信息。
-t:查看 TCP(Transmission Control Protocol,传输控制协议)相关的信息。
-u:显示 UDP(User Datagram Protocol,用户数据报协议)协议相关的信息。
-p:显示与网络连接相关联的进程号、进程名称信息(该选项需要 root 权限)
[root@CentOS7-4 ~]# netstat -anpt
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 942/sshd
tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 1099/master
tcp 0 36 192.168.25.130:22 192.168.25.1:50783 ESTABLISHED 27978/sshd: root@pt
tcp6 0 0 :::80 :::* LISTEN 27157/httpd
tcp6 0 0 :::22 :::* LISTEN 942/sshd
tcp6 0 0 ::1:25 :::* LISTEN 1099/master
[root@CentOS7-4 ~]# netstat -anpt |grep 22
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 942/sshd
tcp 0 36 192.168.25.130:22 192.168.25.1:50783 ESTABLISHED 27978/sshd: root@pt
tcp6 0 0 :::22 :::* LISTEN 942/sshd
ping
命令(测试网络连通性)默认会一直不停的 ping
[root@CentOS7-4 ~]# ping -c 3 www.baidu.com #发送3个报文后停止
[root@CentOS7-4 ~]# ping -l 6000 www.baidu.comu.com #第一次直接发送6000个报文
[root@CentOS7-4 ~]# ping -f www.baidu.com #快速发送ICMP报文,进行压力测试
[root@CentOS7-4 ~]# ping -s 6000 www.baidu.com #每个报文携带6000个字节
traceroute
命令(跟踪数据包的路由途径)
[root@CentOS7-4 ~]# yum -y install traceroute
[root@CentOS7-4 ~]# traceroute www.baidu.com
traceroute to www.baidu.com (14.119.104.254), 30 hops max, 60 byte packets
1 * gateway (192.168.11.1) 0.776 ms 0.743 ms
nslookup
命令(测试DNS
域名解析,需要安装DNS
客户端程序bind-utils
)
[root@CentOS7-4 ~]# nslookup www.baidu.com
Server: 114.114.114.114
Address: 114.114.114.114#53
Non-authoritative answer:
www.baidu.com canonical name = www.a.shifen.com.
Name: www.a.shifen.com
Address: 14.119.104.254
Name: www.a.shifen.com
Address: 14.119.104.189
2、使用网络配置命令
ifconfig
命令(修改网卡的地址、状态)
#临时设置IP地址,当网卡服务重启后,就会重新去提取 ifcfg-ens33 文件内的参数
[root@CentOS7-4 ~]# ifconfig ens33 192.168.88.131/24
#禁用、激活网络接口
[root@CentOS7-4 ~]# ifconfig ens33 down
[root@CentOS7-4 ~]# ifconfig ens33 up
- 修改主机名称(临时生效)
[root@CentOS7-4 ~]# hostname zhangsan
[root@CentOS7-4 ~]# bash #启用新的 Shell 会话
[root@zhangsan ~]#
3、修改网络配置文件
- 为网卡设置永久性
IP
参数
[root@zhangsan ~]# vi /etc/sysconfig/network-scripts/ifcfg-ens33
BOOTPROTO=dhcp #网卡获取IP地址方式(dhcp/static)
DEVICE=ens33 #网卡驱动名称
ONBOOT=yes #开机自动启动
IPADDR=192.168.88.134 #IP地址
NETMASK=255.255.255.0 #子网掩码
GATEWAY=192.168.188.2 #网关
DNS1=114.114.114.114 #DNS服务器地址
DNS2=8.8.8.8
[root@zhangsan ~]# systemctl restart network #重启网卡服务后生效
或者
[root@zhangsan ~]# ifdown ens33 #禁用
[root@zhangsan ~]# ifup ens33 #启用
- 设置永久主机名
[root@zhangsan ~]# vi /etc/hostname
zhangsan
- 本地主机映射文件
[root@woniuyang ~]# vi /etc/hosts
127.0.0.1 CentOS7-4 CentOS7-4.localdomain CentOS7-44 CentOS7-44.localdomain4
::1 CentOS7-4 CentOS7-4.localdomain CentOS7-46 CentOS7-46.localdomain6
192.168.3.10 www.xxxx.com
[root@woniuyang ~]# ping www.xxxx.com
PING www.woniuxy.com (192.168.3.10) 56(84) bytes of data.
4、请求网络中内容
curl
命令(利用URL规则在命令行下工作的文件传输工具)
#向服务器发起get请求
[root@woniuyang ~]# curl http://www.baidu.com
#将请求的内容保存到文件中
[root@woniuyang ~]# curl -o baidu.html http://www.baidu.com
#下载某个文件
[root@woniuyang ~]# curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo
wget
命令(非交互式的网络文件下载工具)
#直接将文件下载到当前目录进行保存
[root@woniuyang ~]# wget https://mirrors.aliyun.com/repo/Centos-7.repo
#将下载的内容指定文件名及存放位置
[root@woniuyang ~]# wget -O /Centos-7.repo https://mirrors.aliyun.com/repo/Centos-7.repo
#断点续传
[root@woniuyang ~]# wget -c https://mirrors.aliyun.com/repo/Centos-7.repo
#后台下载
[root@woniuyang ~]# wget -b https://mirrors.aliyun.com/repo/Centos-7.repo