一、网络命令
1、配置ip
1.1 配置 IP 地址
IP 地址是计算机在互联网中唯一的地址编码。每台计算机如果需要接入网络和其他计算机进行数 据通信,就必须配置唯一的公网 IP 地址。
配置 IP 地址有两种方法:
1)setup 工具
2)vi /etc/sysconfig/network-scripts/ifcfg-eth0 #手工修改配置文件
1.2 重启网络服务
[root@love2 ~]# service network restart
1.3 复制镜像有可能需要重置 UUID(唯一识别符)
[root@love2 ~]# vi /etc/sysconfig/network-scripts/ifcfg-eth0 #删除MAC地址行
[root@love2 ~]# rm -rf /etc/udev/rules.d/70-persistent-net.rules #删除MaC地址和UUID绑定文件
[root@love2 ~]# reboot #重启Linux
2、ifconfig 命令
命令名称:ifconfig。
英文原意:configure a network interface。
所在路径:/sbin/ifconfig。
执行权限:超级用户
功能描述:查看ip地址相关信息
[root@localhost ~]# ifconfig
eth0 Link encap:Ethernet HWaddr 00:0C:29:39:48:4A
mac地址
inet addr:100.100.100.22 Bcast:100.100.100.255 Mask:255.255.255.0
ipv4地址 广播 子网掩码
inet6 addr: fe80::20c:29ff:fe39:484a/64 Scope:Link
ipv6地址
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:158 errors:0 dropped:0 overruns:0 frame:0
TX packets:115 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:16810 (16.4 KiB) TX bytes:14897 (14.5 KiB)
接受的数据包情况 发送的数据包情况
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:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:0 (0.0 b) TX bytes:0 (0.0 b)
3、ping 命令
ping 是常用的网络命令,主要通过 ICMP 协议进行网络探测,测试网络中主机的通信情况。
命令名称:ping。
英文原意:send ICMP ECHO_REQUEST to network hosts。
所在路径:/bin/ping。
执行权限:所有用户。
功能描述:向网络主机发送 ICMP 请求。
[root@love2 ~]# ping [选项] IP
选项:
-b: 后面加入广播地址,用于对整个网段进行探测
-c 次数: 用于指定ping的次数
-s 字节: 指定探测包的大小
4、netstat 命令
netstat 是网络状态查看命令,既可以查看到本机开启的端口,也可以查看有哪些客户端连接,在 CentOS 7.x 中 netstat 命令默认没有安装,如果需要使用,需要安装 net-snmp 和 net-tools 软件包。
命令名称:netstat。
英文原意:Print network connections, routing tables, interface statistics, masquerade connections, and multicast memberships
所在路径:/bin/netstat
执行权限:所有用户。
功能描述:输出网络连接、路由表、接口统计、伪装连接和组播成员
[root@love2 ~]# netstat [选项]
选项:
-a: 列出所有网络状态,包括Socket程序
-c 秒数: 指定每隔几秒刷新一次网络状态
-n: 使用IP地址和端口号显示,不使用域名与服务名
-p: 显示PID和程序名
-t: 显示使用TCP协议端口的连接状况
-u: 显示使用UDP协议端口的连接状况
-l: 仅显示监听状态的连接
-r: 显示路由表
例子1
查看所有连接
[root@localhost ~]# netstat -an
例子2查看本机软件开启的端口和ip
协议 接收数据 发送.. 本机ip与端口 远程ip与端口 状态 进程id和服务名
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:52326 0.0.0.0:* LISTEN 1297/rpc.statd
tcp 0 0 0.0.0.0:111 0.0.0.0:* LISTEN 1275/rpcbind
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 1517/sshd
tcp 0 0 127.0.0.1:631 0.0.0.0:* LISTEN 1352/cupsd
tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 1596/master
State:状态详解
常见的状态主要有以下几种。
- LISTEN:监听状态,只有 TCP 协议需要监听,而 UDP 协议不需要监听。
- ESTABLISHED:已经建立连接的状态。如果使用“-l”选项,则看不到已经建立连接的状态。
- SYN_SENT:SYN 发起包,就是主动发起连接的数据包。
- SYN_RECV:接收到主动连接的数据包。
- FIN_WAIT1:正在中断的连接。
- FIN_WAIT2:已经中断的连接,但是正在等待对方主机进行确认。
- TIME_WAIT:连接已经中断,但是套接字依然在网络中等待结束。
- CLOSED:套接字没有被使用。
在这些状态中,我们最常用的就是 LISTEN 和 ESTABLISHED 状态,一种代表正在监听,另一种代表已经建立连接。
5、write 命令
命令名称:write
英文原意:send a message to another user
所在路径:/usr/bin/write。
执行权限:所有用户
功能描述:向其他用户发送信息
[root@localhost ~]#write root tty1
# 向 在 tty1(本地终端 1 )登 录 的 root 用户发送信息,使用“ Ctrl+D ” 快捷键 保存发送 的 数据
6、wall 命令
write 命令用于给指定用户发送信息,而 wall 命令用于给所有登录用户发送信息,包括你自己。
[root@localhost ~]# wall 123456
[root@localhost ~]#
Broadcast message from root@localhost.localdomain (pts/0) (Wed Nov 27 16:02:15 2019):
123456
7、mail 命令
mail 是 Linux 的邮件客户端命令,可以利用这个命令给其他用户发送邮件。
命令名称:mail。
英文原意:send and receive Internet mail。
所在路径:/bin/mail。
执行权限:所有用户。
功能描述:发送和接收电子邮件。
7.1 发送邮件
[root@localhost ~]# mail root 给root发送邮件
Subject: haha #主题
ni jiu shi ge dd #内容
. # . 结束邮件
EOT
7.2 发送文件内容
[root@localhost ~]# mail -s 'test ' root < /root/anaconda-ks.cfg
You have mail in /var/spool/mail/root
选项:
-s: 指定邮件标题
# 把 /root/anaconda-ks.cfg 文件 的 内容发送给 root 用户
7.3 读取邮件
[root@localhost ~]# mail
Heirloom Mail version 12.4 7/29/08. Type ? for help.
"/var/spool/mail/root": 2 messages 2 new
>N 1 root Wed Nov 27 16:05 18/612 "haha"
N 2 root Wed Nov 27 16:08 77/2106 "test"
&
常用命令
? 显示帮助
headers:列出邮件标题列表,直接输入“h”命令即可。
delete:删除指定邮件。比如想要删除第二封邮件,可以输入“d 2”。
save:保存邮件。可以把指定邮件保存成文件,如“s 2 /tmp/test.mail”。
quit:退出,并把已经操作过的邮件进行保存。比如移除已删除邮件、保存已阅读邮件等。
exit:退出,但是不保存任何操作。