Linux - 常用网络命令详解netstat,scp

时间:2022-07-02 16:39:45

ifconfig

查看生效的ip信息。

[root@local ~]# ifconfig
eno16777736: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.70.77 netmask 255.255.255.0 broadcast 192.168.70.255
inet6 fe80::20c:29ff:fe6e:b72b prefixlen 64 scopeid 0x20<link>
ether 00:0c:29:6e:b7:2b txqueuelen 1000 (Ethernet)
RX packets 7492 bytes 625846 (611.1 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 3334 bytes 451391 (440.8 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10<host>
loop txqueuelen 0 (Local Loopback)
RX packets 12 bytes 1020 (1020.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 12 bytes 1020 (1020.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 virbr0: flags=4099<UP,BROADCAST,MULTICAST> mtu 1500
inet 192.168.122.1 netmask 255.255.255.0 broadcast 192.168.122.255
ether 52:54:00:8c:58:59 txqueuelen 0 (Ethernet)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

ifconfig 命令看不到网关和DNS。

ifdown,ifup

关闭和启动网卡

[root@local ~]# ifdown lo
[root@local ~]# ifconfig
eno16777736: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.70.77 netmask 255.255.255.0 broadcast 192.168.70.255
inet6 fe80::20c:29ff:fe6e:b72b prefixlen 64 scopeid 0x20<link>
ether 00:0c:29:6e:b7:2b txqueuelen 1000 (Ethernet)
RX packets 7600 bytes 634935 (620.0 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 3384 bytes 457849 (447.1 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 virbr0: flags=4099<UP,BROADCAST,MULTICAST> mtu 1500
inet 192.168.122.1 netmask 255.255.255.0 broadcast 192.168.122.255
ether 52:54:00:8c:58:59 txqueuelen 0 (Ethernet)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
[root@local ~]# ifup lo
[root@local ~]# ifconfig
eno16777736: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.70.77 netmask 255.255.255.0 broadcast 192.168.70.255
inet6 fe80::20c:29ff:fe6e:b72b prefixlen 64 scopeid 0x20<link>
ether 00:0c:29:6e:b7:2b txqueuelen 1000 (Ethernet)
RX packets 7647 bytes 638881 (623.9 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 3416 bytes 462387 (451.5 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10<host>
loop txqueuelen 0 (Local Loopback)
RX packets 12 bytes 1020 (1020.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 12 bytes 1020 (1020.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 virbr0: flags=4099<UP,BROADCAST,MULTICAST> mtu 1500
inet 192.168.122.1 netmask 255.255.255.0 broadcast 192.168.122.255
ether 52:54:00:8c:58:59 txqueuelen 0 (Ethernet)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

netstat

查看网络状态

-t 列出tcp协议端口

-u 列出udp协议端口

-n 不使用域名与服务名,使用IP和端口

-l 列出监听状态的网络服务

-a 列出所有的网络连接

-r 路由信息

-p 列出pid,进程id

[root@local ~]# netstat -rn
Kernel IP routing table
Destination Gateway Genmask Flags MSS Window irtt Iface
0.0.0.0 192.168.70.70 0.0.0.0 UG 0 0 0 eno16777736
192.168.70.0 0.0.0.0 255.255.255.0 U 0 0 0 eno16777736
[root@local ~]# route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 192.168.70.70 0.0.0.0 UG 100 0 0 eno16777736
192.168.70.0 0.0.0.0 255.255.255.0 U 100 0 0 eno16777736
[root@local ~]# netstat -anp|grep :22
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 1185/sshd
tcp 0 52 192.168.70.77:22 192.168.70.33:58840 ESTABLISHED 2436/sshd: root@pts
tcp6 0 0 :::22 :::* LISTEN 1185/sshd
[root@local ~]# netstat -an|grep :22
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN
tcp 0 52 192.168.70.77:22 192.168.70.33:58840 ESTABLISHED
tcp6 0 0 :::22 :::* LISTEN
[root@local ~]# netstat -tunl
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 192.168.122.1:53 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN
tcp 0 0 127.0.0.1:631 0.0.0.0:* LISTEN
tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN
tcp6 0 0 :::22 :::* LISTEN
tcp6 0 0 ::1:631 :::* LISTEN
tcp6 0 0 ::1:25 :::* LISTEN
udp 0 0 192.168.122.1:53 0.0.0.0:*
udp 0 0 0.0.0.0:67 0.0.0.0:*
udp 0 0 0.0.0.0:5353 0.0.0.0:*
udp 0 0 127.0.0.1:323 0.0.0.0:*
udp 0 0 0.0.0.0:46466 0.0.0.0:*
udp6 0 0 ::1:323 :::*

通过这条指令查看当前计算机开启了哪些服务。

[root@local ~]# netstat -an|grep ESTABLISHED
tcp 0 52 192.168.70.77:22 192.168.70.33:58840 ESTABLISHED

查看正在连接我的计算机。

[root@local ~]# netstat -an|grep ESTABLISHED |wc -l
1

通过两个管道可以统计出数量。

网关不可以乱设置,如果设置多个,或者设置的网关地址不存在,很可能就无法上网了。

nslookup

查看DNS

[root@local ~]# nslookup www.qq.com
Server: 114.114.114.114
Address: 114.114.114.114#53 Non-authoritative answer:
Name: www.qq.com
Address: 180.96.86.192 [root@local ~]# ping www.qq.com
PING www.qq.com (180.96.86.192) 56(84) bytes of data.
64 bytes from 180.96.86.192: icmp_seq=1 ttl=54 time=9.60 ms
64 bytes from 180.96.86.192: icmp_seq=2 ttl=54 time=9.33 ms

ping 命令

查看是否可以通信

[root@local ~]# ping -c 4 www.baidu.com
PING www.a.shifen.com (180.97.33.107) 56(84) bytes of data.
64 bytes from 180.97.33.107: icmp_seq=1 ttl=55 time=9.04 ms
64 bytes from 180.97.33.107: icmp_seq=2 ttl=55 time=10.2 ms
64 bytes from 180.97.33.107: icmp_seq=3 ttl=55 time=9.07 ms
64 bytes from 180.97.33.107: icmp_seq=4 ttl=55 time=14.9 ms --- www.a.shifen.com ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3005ms
rtt min/avg/max/mdev = 9.042/10.825/14.948/2.429 ms

telnet

远程管理,明文通信。数据包在互联网上不会被加密。建议少用。

traceroute

跟踪查看路由命令

[root@local ~]# traceroute www.baidu.com
traceroute to www.baidu.com (180.97.33.107), 30 hops max, 60 byte packets
1 192.168.70.70 (192.168.70.70) 0.275 ms 0.274 ms 0.223 ms
2 192.168.1.1 (192.168.1.1) 0.555 ms 0.604 ms 0.534 ms
3 100.73.0.1 (100.73.0.1) 3.010 ms 3.316 ms 3.267 ms
4 222.187.235.217 (222.187.235.217) 2.718 ms 2.646 ms 2.585 ms
5 222.187.235.105 (222.187.235.105) 13.826 ms 13.559 ms 13.826 ms
6 202.102.73.122 (202.102.73.122) 16.276 ms 202.102.73.126 (202.102.73.126) 19.856 ms 202.102.69.186 (202.102.69.186) 13.546 ms
7 * * *
8 180.97.32.130 (180.97.32.130) 13.049 ms 180.97.32.26 (180.97.32.26) 139.445 ms 180.97.32.2 (180.97.32.2) 10.769 ms
9 * * *
[root@local ~]# ping www.baidu.com
PING www.a.shifen.com (180.97.33.107) 56(84) bytes of data.
64 bytes from 180.97.33.107: icmp_seq=1 ttl=55 time=9.25 ms
64 bytes from 180.97.33.107: icmp_seq=2 ttl=55 time=9.55 ms
64 bytes from 180.97.33.107: icmp_seq=3 ttl=55 time=9.30 ms

*** 表示ping不同的地址

wget

下载命令

tcpdump

抓包命令

[root@local 桌面]# tcpdump -i eth0 -nnX port 22

-i 指定监听的网卡

-nn 将数据包中的域名与服务转为ip和端口

-X 以16进制和ASCII码显示数据包内容

prot指定监听的端口

scp

远程上传或者下载

[root@localhost ~]# scp -r testscp/ root@192.168.70.77:/root
The authenticity of host '192.168.70.77 (192.168.70.77)' can't be established.
RSA key fingerprint is c1:d1:80:44:94:0b:e2:fb:b4:82:20:79:5f:94:5f:41.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '192.168.70.77' (RSA) to the list of known hosts.
root@192.168.70.77's password:
hello 100% 10 0.0KB/s 00:00

这个是上传。

[root@localhost testscp]# scp -r root@192.168.70.77:/root/testscp /root
root@192.168.70.77's password:
hello 100% 10 0.0KB/s 00:00
world 100% 12 0.0KB/s 00:00

这个是下载。