网络通信

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          # 显示组播组的关系
Previous
Next