2.11、常用网络命令
2.11.1 、配置IP地址
ip地址:ip地址是计算机在互联网中唯一的地址编码。每台计算机如果需要接入网络和其他计算机进行数据通信,就必须配置唯一的公网IP地址。
1.配置ip地址
配置ip地址的两种方法:
1、setup工具 (redhad、centOS专有)
2、[root@xyc ~]# vi /etc/sysconfig/network-scripts/ifcfg-eth0
2 、重启网络服务
[root@xyc ~]# server network restart
# 重启网络服务
3 、虚拟机需要桥接到有线网卡,并重启网络服务
4、复制镜像有可能需要重置UUID (唯一标识符)
2.11.2 、ifconfig
- 命令名称:ifconfig
- 英文原意:configure a network interface
- 所在路径:/usr/sbin/ifconfigs
- 执行权限:超级用户
- 功能描述:配置网络接口
- 主要作用就是查看ip地址信息
2.11.3、ping
- 命令名称:ping
- 英文原意:send ICMP ECHO_REQUEST to network hosts
- 所在路径:/usr/bin/ping
- 执行权限:所有用户
- 功能描述:向网络主机发送ICMP请求
[root@xyc ~]# ping [选项] IP
选项:
-b : 后面加入广播地址,用于对整个网段进行探测
-c 次数: 用于指定ping的次数
-s 字节: 指定探测包的大小
例:
# 对百度ping 3 次
[root@xyc ~]# ping -c 3 www.baidu.com
2.11.4、netstat
网络状态查看命令,既可以查看到本机开启的端口,也可以查看到有哪些客户端连接。
在Centos7.X中netstat命令默认没有安装,使用时,需要安装nwt-snmp和net-tools软件包
- 命令名称:netstat
- 英文原意:Print network connections, routing tables, interface statistics, masquerade connections, and multicast memberships
- 所在路径:/usr/bin/netstat
- 执行权限:所有用户
- 功能描述:输出网络连接、路由表、接口统计、伪装链接和组播成员
[root@xyc ~]# netstat [选项]
选项:
-a : 列出所有网络状态,包括Socket程序
-c 秒数: 指定么隔几秒刷新一次网络状态
-n : 使用IP地址和端口号显示,不适用域名和服务名
-p : 显示PID和程序名
-t : 显示使用TCP协议端口的连接状态
-u : 显示使用UDP协议端口的连接状态
-l : 仅显示监听状态的连接
-r : 显示路由表
例子:
# 查看本机开启的端口
[root@xyc ~]# netstat -tuln
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 127.0.0.1:27017 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:8009 0.0.0.0:* LISTEN
tcp 0 0 127.0.0.1:6379 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:8080 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:888 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:8888 0.0.0.0:* LISTEN
tcp6 0 0 :::3306 :::* LISTEN
udp 0 0 0.0.0.0:68 0.0.0.0:*
udp 0 0 172.17.157.135:123 0.0.0.0:*
udp 0 0 127.0.0.1:123 0.0.0.0:*
udp 0 0 0.0.0.0:123 0.0.0.0:*
udp 0 0 0.0.0.0:41824 0.0.0.0:*
udp6 0 0 :::123 :::*
udp6 0 0 :::36688 :::*
# 查看本机那些程序占用了端口
[root@xyc ~]# netstat -tulnp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 127.0.0.1:27017 0.0.0.0:* LISTEN 24887/mongod
tcp 0 0 0.0.0.0:8009 0.0.0.0:* LISTEN 20280/jsvc.exec
tcp 0 0 127.0.0.1:6379 0.0.0.0:* LISTEN 24706/redis-server
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 29434/nginx: master
tcp 0 0 0.0.0.0:8080 0.0.0.0:* LISTEN 20280/jsvc.exec
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 2302/sshd
tcp 0 0 0.0.0.0:888 0.0.0.0:* LISTEN 29434/nginx: master
tcp 0 0 0.0.0.0:8888 0.0.0.0:* LISTEN 3525/python
tcp6 0 0 :::3306 :::* LISTEN 31555/mysqld
udp 0 0 0.0.0.0:68 0.0.0.0:* 17725/dhclient
udp 0 0 172.17.157.135:123 0.0.0.0:* 2567/ntpd
udp 0 0 127.0.0.1:123 0.0.0.0:* 2567/ntpd
udp 0 0 0.0.0.0:123 0.0.0.0:* 2567/ntpd
udp 0 0 0.0.0.0:41824 0.0.0.0:* 17725/dhclient
udp6 0 0 :::123 :::* 2567/ntpd
udp6 0 0 :::36688 :::* 17725/dhclient
# 查看网关
[root@xyc ~]# netstat -rn
Kernel IP routing table
Destination Gateway Genmask Flags MSS Window irtt Iface
0.0.0.0 172.17.159.253 0.0.0.0 UG 0 0 0 eth0
169.254.0.0 0.0.0.0 255.255.0.0 U 0 0 0 eth0
172.17.144.0 0.0.0.0 255.255.240.0 U 0 0 0 eth0
2.11.5、write命令
- 命令名称:write
- 英文原意:send a message to another user
- 所在路径:/usr/bin/write
- 执行权限:所有用户
- 功能描述: 向其他用户发送信息
[root@xyc ~]# write root pts/0
hello
i will be in 5 minutes to restart ,please save your data
# 向在pts/1(远程终端1)登录的root用户发送信息,使用”Ctrl+D“快捷键保存发送的数据
2.11.6、wall
wall用于给所有登陆用户发送信息,包括自己。
执行时,在wall命令后加入需要发送的信息即可。
[root@xyc ~]# wall "I will be in 5 minutes to restart "
2.11.7、mail
- 命令名称:mail
- 英文原意:send and receive Internet mail
- 所在路径:/usr/bin/mail
- 执行权限:所有用户
- 功能描述: 发送和接受电子邮件
[root@xyc ~]# mail 用户名
Subject: hello # 标题
Nice to meet you! # 内容
. #使用 ‘.’ 来结束邮件输入
我们接收到的邮件都保存在"/var/spool/mail/用户名"中,每一个用户都有一个用自己用户名命名的邮箱
# 发送文件内容
[root@xyc ~]# mail -s "test mail" root < /root/anaconda-ks.cfg
选项:
-s : 指定邮件标题
# 把/root/anaconda-ks.cfg文件的内容发送给root用户
# 查看邮件
[root@xyc ~]# mail