Linux 常用网络命令
网络工具
Linux 中提供了强大的网络工具包,用于监测系统中的网络通信状态。
查询网络服务和端口
netstat 命令用于显示各种网络相关信息,如网络连接,路由表,接口状态 (Interface Statistics),masquerade 连接,多播成员 (Multicast Memberships) 等等。
列出所有端口 (包括监听和未监听的):
1 | $netstat -a |
列出所有 tcp 端口:
1 | $netstat -at |
列出所有有监听的服务状态:
1 | $netstat -l |
使用 netstat 工具查询端口:
1 | $netstat -antp | grep 6379 |
查看文件状态
lsof(list open files)是一个列出当前系统打开文件的工具。在 linux 环境下,任何事物都以文件的形式存在,通过文件不仅仅可以访问常规数据,还可以访问网络连接和硬件。所以如传输控制协议 (TCP) 和用户数据报协议 (UDP) 套接字等; 在查询网络端口时,经常会用到这个工具。
查询 7902 端口现在运行什么程序:
1 | # 分为两步 |
注解
以上介绍 lsof 关于网络方面的应用,这个工具非常强大,需要好好掌握,详见 lsof 一切皆文件 ;
网络路由
查看路由状态:
1 | $route -n |
发送 ping 包到地址 IP:
1 | $ping IP |
探测前往地址 IP 的路由路径:
1 | $traceroute IP |
DNS 查询,寻找域名 domain 对应的 IP:
1 | $host domain |
反向 DNS 查询:
1 | $host IP |
镜像下载
直接下载文件或者网页:
1 | $wget url |
常用选项:
- –limit-rate : 下载限速
- -o:指定日志文件;输出都写入日志;
- -c:断点续传
ftp sftp lftp ssh
SSH 登陆:
1 | $ssh ID@host |
ssh 登陆远程服务器 host,ID 为用户名。
ftp/sftp 文件传输:
1 | $sftp ID@host |
登陆服务器 host,ID 为用户名。sftp 登陆后,可以使用下面的命令进一步操作:
- get filename # 下载文件
- put filename # 上传文件
- ls # 列出 host 上当前路径的所有文件
- cd # 在 host 上更改当前路径
- lls # 列出本地主机上当前路径的所有文件
- lcd # 在本地主机更改当前路径
lftp 同步文件夹 (类似 rsync 工具):
1 | lftp -u user:pass host |
网络复制
将本地 localpath 指向的文件上传到远程主机的 path 路径:
1 | $scp localpath ID@host:path |
以 ssh 协议,遍历下载 path 路径下的整个文件系统,到本地的 localpath:
1 | $scp -r ID@site:path localpath |
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 Serendipity!