netstat、sof、route、ping、hos、 wget、sftp、scp的使用介绍
【查询网络服务和端口】
netstat 命令用于显示各种网络相关信息,如网络连接,路由表,接口状态 (Interface Statistics),masquerade 连接,多播成员 (Multicast Memberships) 等等。
列出所有端口 (包括监听和未监听的):
[root@wzxaini9 ~]# netstat -a Active Internet connections (servers and established) Proto Recv-Q Send-Q Local Address Foreign Address State tcp 0 0 0.0.0.0:33831 0.0.0.0:* LISTEN tcp 0 0 0.0.0.0:37038 0.0.0.0:* LISTEN ...... Active UNIX domain sockets (servers and established) Proto RefCnt Flags Type State I-Node Path unix 2 [ ACC ] STREAM LISTENING 23107 /var/lib/gssproxy/default.sock unix 2 [ ACC ] STREAM LISTENING 23108 /run/gssproxy.sock ......
列出所有 tcp 端口:
[root@wzxaini9 ~]# netstat -at Active Internet connections (servers and established) Proto Recv-Q Send-Q Local Address Foreign Address State tcp 0 0 0.0.0.0:33831 0.0.0.0:* LISTEN tcp 0 0 0.0.0.0:37038 0.0.0.0:* LISTEN ......
列出所有有监听的服务状态:
[root@wzxaini9 ~]# netstat -l Active Internet connections (only servers) Proto Recv-Q Send-Q Local Address Foreign Address State tcp 0 0 0.0.0.0:33831 0.0.0.0:* LISTEN tcp 0 0 0.0.0.0:37038 0.0.0.0:* LISTEN ......
使用netstat工具查询端口:
[root@wzxaini9 ~]# netstat -antp | grep 80 tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 3256/nginx: master [root@wzxaini9 ~]# ps 3256 PID TTY STAT TIME COMMAND 3256 ? Ss 0:00 nginx: master process /usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
lsof(list open files)是一个列出当前系统打开文件的工具。在linux环境下,任何事物都以文件的形式存在,通过文件不仅仅可以访问常规数据,还可以访问网络连接和硬件。所以如传输控制协议 (TCP) 和用户数据报协议 (UDP) 套接字等; 在查询网络端口时,经常会用到这个工具。
查询7902端口现在运行什么程序:
#分为两步
#第一步,查询使用该端口的进程的PID;
[root@wzxaini9 ~]# lsof -i:7902 COMMAND PID USER FD TYPE DEVICE SIZE NODE NAME WSL 30294 tuapp 4u IPv4 447684086 TCP 10.6.50.37:tnos-dp (LISTEN)
#查到30294
#使用ps工具查询进程详情:
[root@wzxaini9 ~]# ps -fe | grep 30294 tdev5 30294 26160 0 Sep10 ? 01:10:50 tdesl -k 43476 root 22781 22698 0 00:54 pts/20 00:00:00 grep 11554
注:以上介绍lsof关于网络方面的应用,这个工具非常强大,需要好好掌握
【网络路由】
查看路由状态:
[root@wzxaini9 ~]# route -n Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface 0.0.0.0 172.21.0.1 0.0.0.0 UG 0 0 0 eth0 169.254.0.0 0.0.0.0 255.255.0.0 U 1002 0 0 eth0 172.21.0.0 0.0.0.0 255.255.240.0 U 0 0 0 eth0
发送ping包到地址IP:
[root@wzxaini9 ~]# ping 172.21.0.11 PING 172.21.0.8 (172.21.0.11) 56(84) bytes of data. 64 bytes from 172.21.0.11: icmp_seq=1 ttl=64 time=0.018 ms
探测前往地址IP的路由路径:
[root@wzxaini9 ~]# traceroute 172.21.0.11 traceroute to 172.21.0.11 (172.21.0.11), 30 hops max, 60 byte packets 1 wzxaini9 (172.21.0.11) 0.030 ms 0.007 ms 0.006 ms
DNS查询,寻找域名domain对应的IP:
[root@wzxaini9 ~]# host www.baidu.com www.baidu.com is an alias for www.a.shifen.com. www.a.shifen.com has address 220.181.111.37 www.a.shifen.com has address 220.181.112.244
反向DNS查询:
[root@wzxaini9 ~]# host 127.0.0.1 1.0.0.127.in-addr.arpa domain name pointer localhost.
【镜像下载】
直接下载文件或者网页:
[root@wzxaini9 ~]# wget https://www.google.com
常用选项:
· –limit-rate :下载限速
· -o:指定日志文件;输出都写入日志;
· -c:断点续传
【ftp sftp lftp ssh】
SSH登陆:
[root@wzxaini9 ~]# ssh root@127.0.0.1
ssh登陆远程服务器127.0.0.1,root为用户名。
ftp/sftp文件传输:
[root@wzxaini9 ~]# sftp root@127.0.0.1
登陆服务器host,ID为用户名。sftp登陆后,可以使用下面的命令进一步操作:
· get filename # 下载文件
· put filename # 上传文件
· ls # 列出host上当前路径的所有文件
· cd # 在host上更改当前路径
· lls # 列出本地主机上当前路径的所有文件
· lcd # 在本地主机更改当前路径
lftp同步文件夹(类似rsync工具):
[root@wzxaini9 ~]# lftp -u user:pass host [root@wzxaini9 ~]# lftp user@host:~> mirror -n
【网络复制】
将本地localpath指向的文件上传到远程主机的path路径:
[root@wzxaini9 ~]# scp localpath ID@host:path
以ssh协议,遍历下载path路径下的整个文件系统,到本地的localpath:
[root@wzxaini9 ~]# scp -r ID@site:path localpath
登录后可发表评论