网络通信
ping 命令:测试主机间网络连通性
ping 命令主要用来测试主机之间网络的连通性,也可以用于。执行 ping 指令会使用 ICMP 传输协议,发出要求回应的信息,若远端主机的网络功能没有问题,就会回应该信息,因而得知该主机运作正常。
不过值得我们注意的是Linux 系统下的 ping 命令与 Windows 系统下的 ping 命令稍有不同。Windows 下运行 ping 命令一般会发出 4 个请求就结束运行该命令;而 Linux 下不会自动终止,此时需要我们按 CTRL+C 终止或者使用 -c 参数为 ping 命令指定发送的请求数目。
常用参数
| 参数 | 功能 |
|---|---|
| -d | 使用Socket的SO_DEBUG功能 |
| -c | 指定发送报文的次数 |
| -i | 指定收发信息的间隔时间 |
| -I | 使用指定的网络接口送出数据包 |
| -l | 设置在送出要求信息之前,先行发出的数据包 |
| -n | 只输出数值 |
| -p | 设置填满数据包的范本样式 |
| -q | 不显示指令执行过程 |
| -R | 记录路由过程 |
| -s | 设置数据包的大小 |
| -t | 设置存活数值TTL的大小 |
| -v | 详细显示指令的执行过程 |
参考实例
ping www.baidu.com # 检测与百度网站的连通性
ping -c 4 www.baidu.com # 连续ping4次
ping -c 4 -i 3 www.baidu.com # 设置次数为4,时间间隔为3秒
ping -c 1 www.baidu.com | grep from | cut -d " " -f 4 # 利用ping命令获取指定网站的IP地址ifconfig 命令:显示或设置网络设备
ifconfig 命令的英文全称是 network interfaces configuring,即用于配置和显示 Linux 内核中网络接口的网络参数。用 ifconfig 命令配置的网卡信息,在网卡重启后机器重启后,配置就不存在。要想将上述的配置信息永远的存的电脑里,那就要修改网卡的配置文件了。
常用参数
| 参数 | 功能 |
|---|---|
| add<地址> | 设置网络设备IPv6的IP地址 |
| del<地址> | 删除网络设备IPv6的IP地址 |
| down | 关闭指定的网络设备 |
| up | 启动指定的网络设备 |
| IP地址 | 指定网络设备的IP地址 |
ssh 命令:安全连接客户端
ssh 命令是 openssh 套件中的客户端连接工具,可以给予 ssh 加密协议实现安全的远程登录服务器,实现对服务器的远程管理。
常用参数
| 参数 | 命令 |
|---|---|
| -1 | 强制使用ssh协议版本1 |
| -2 | 强制使用ssh协议版本2 |
| -4 | 强制使用IPv4地址 |
| -6 | 强制使用IPv6地址 |
| -A | 开启认证代理连接转发功能 |
| -a | 关闭认证代理连接转发功能 |
| -b<IP地址> | 使用本机指定的地址作为对位连接的源IP地址 |
| -C | 请求压缩所有数据 |
| -F<配置文件> | 指定ssh指令的配置文件,默认的配置文件为“/etc/ssh/ssh_config” |
| -f | 后台执行ssh指令 |
| -g | 允许远程主机连接本机的转发端口 |
| -i<身份文件> | 指定身份文件(即私钥文件) |
| -l<登录名> | 指定连接远程服务器的登录用户名 |
| -N | 不执行远程指令 |
| -o<选项> | 指定配置选项 |
| -p<端口> | 指定远程服务器上的端口 |
| -q | 静默模式,所有的警告和诊断信息被禁止输出 |
| -X | 开启X11转发功能 |
| -x | 关闭X11转发功能 |
| -y | 开启信任X11转发功能 |
参考实例
ssh 202.102.240.88 # 登录远程服务器
ssh -l test 202.102.220.88 # 用test用户连接远程服务器
ssh 202.102.220.88 /sbin/fdisk -l # 查看分区列表netstat 命令:显示网络状态
netstat 命令用于显示各种网络相关信息,如网络连接,路由表,接口状态(Interface Statistics),masquerade 连接,多播成员(Multicast Memberships)等等。
从整体上看,netstat 的输出结果可以分为两个部分:一个是 Active Internet connections,称为有源 TCP 连接,其中 Recv-Q 和 Send-Q 分别指接收队列和发送队列。这些数字一般都应该是 0。如果不是则表示软件包正在队列中堆积。这种情况只能在非常少的情况见到;另一个是 Active UNIX domain sockets,称为有源 Unix 域套接口(和网络套接字一样,但是只能用于本机通信,性能可以提高一倍)。
常用参数
| 参数 | 命令 |
|---|---|
| -a | 显示所有连线中的Socket |
| -p | 显示正在使用Socket的程序识别码和程序名称 |
| -u | 显示UDP传输协议的连线状况 |
| -i | 显示网络界面信息表单 |
| -n | 直接使用IP地址,不通过域名服务器 |
参考实例
netstat -a # 显示详细的网络状况
netstat -u # 显示当前户籍UDP连接状况
netstat -apu # 显示UDP端口号的使用情况
netstat -i # 显示网卡列表
netstat -g # 显示组播组的关系