随笔(持续更新)
1、某个网络有没有连通
要获取某个网站的ip地址,可以通过ping它的域名就可以得到IP地址
例如:我想获取百度的ip地址(Windows环境)
C:\Users\tq>ping www.baidu.com正在 Ping www.a.shifen.com [14.119.104.189] 具有 32 字节的数据:
来自 14.119.104.189 的回复: 字节=32 时间=6ms TTL=56
来自 14.119.104.189 的回复: 字节=32 时间=6ms TTL=56
来自 14.119.104.189 的回复: 字节=32 时间=6ms TTL=56
来自 14.119.104.189 的回复: 字节=32 时间=7ms TTL=5614.119.104.189 的 Ping 统计信息:数据包: 已发送 = 4,已接收 = 4,丢失 = 0 (0% 丢失),
往返行程的估计时间(以毫秒为单位):最短 = 6ms,最长 = 7ms,平均 = 6ms
如上述cmd终端中所示的14.119.104.189
就是百度的一个ip地址
所以直接用命令行ping 14.119.104.189
也能ping通
而在Linux环境下要检查是否ping通,除了ping 14.119.104.189
这个命令,还可以使用telnet
但是要加上本机已经开放的端口号这里使用80端口
kylin@kylin:~/桌面$ telnet 14.119.104.189 80
Trying 14.119.104.189...
Connected to 14.119.104.189.
Escape character is '^]'.
GET / HTTP/1.1
Host:14.119.104.189
Connection closed by foreign host.
我们发现使用虚拟机telnet百度的ip地址会出现以下画面
我们输入
GET / HTTP/1.1
Host:14.119.104.189
发送一个HTTP 1.1的请求,发现连接会被百度的服务器所关闭,被对方的防火墙拦截了。但是实际上已经是连通了,只是对方把我们拦截住了。
2、如何查看某个端口号是否已开放
2.1 Linux环境下:
可以使用以下几种方法:
-
使用
netstat
命令:
使用netstat
命令可以列出当前系统上的网络连接和监听端口。你可以运行以下命令,将端口号替换为你要检查的端口:netstat -tuln | grep <端口号> #例如,要检查端口 80 是否开放,可以运行: netstat -tuln | grep 80
如果该端口处于监听状态,表示它是开放的。
例如:
kylin@kylin:~/桌面$ netstat -tuln 激活Internet连接 (仅服务器) Proto Recv-Q Send-Q Local Address Foreign Address State tcp 0 0 0.0.0.0:139 0.0.0.0:* LISTEN tcp 0 0 0.0.0.0:8751 0.0.0.0:* LISTEN tcp 0 0 127.0.1.1:53 0.0.0.0:* LISTEN tcp 0 0 127.0.0.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 0.0.0.0:445 0.0.0.0:* LISTEN tcp6 0 0 :::139 :::* LISTEN tcp6 0 0 ::1:53 :::* LISTEN tcp6 0 0 :::22 :::* LISTEN tcp6 0 0 ::1:631 :::* LISTEN tcp6 0 0 :::445 :::* LISTEN ......
根据你的
netstat -tuln
输出,可以看到正在监听的端口以及它们的状态。以下是一些端口和状态的解释:-
0.0.0.0:139
和:::139
:这是端口 139,通常用于 NetBIOS 会话服务,用于文件和打印共享。 -
0.0.0.0:8751
:这是一个定制端口(非标准端口),目前不清楚它的具体用途。 -
127.0.1.1:53
和127.0.0.1:53
:这是端口 53,用于 DNS 服务,但它仅绑定到本地主机(loopback)地址。这表示 DNS 服务仅对本地主机可用。 -
0.0.0.0:22
和:::22
:这是端口 22,用于 SSH(Secure Shell)服务,用于远程访问和管理主机。 -
127.0.0.1:631
和::1:631
:这是端口 631,用于 CUPS(Common Unix Printing System)服务,用于打印服务。 -
0.0.0.0:445
和:::445
:这是端口 445,通常用于 SMB(Server Message Block)文件共享服务,用于 Windows 文件共享。
根据输出,端口 80 并没有显示在
netstat
结果中,这意味着在默认的配置下,端口 80 当前没有正在监听的服务。如果希望开放端口 80,需要启动或配置一个 Web 服务器(如 Apache 或 Nginx)来监听端口 80。 -
-
使用
ss
命令:
ss
命令与netstat
类似,也可以用来列出网络连接和监听端口。运行以下命令来检查端口是否开放,将端口号替换为你要检查的端口:ss -tuln | grep <端口号>
例如,要检查端口 80 是否开放,可以运行:
ss -tuln | grep 80
如果端口处于监听状态,它就是开放的。
-
使用
telnet
命令:
你可以使用telnet
命令来尝试连接到特定端口。如果连接成功,表示端口是开放的。运行以下命令,将<IP地址>
替换为目标 IP 地址,<端口号>
替换为要检查的端口号:telnet <IP地址> <端口号>
例如,要检查 IP 地址为 192.168.1.100 的主机上的端口 80 是否开放,可以运行:
telnet 192.168.1.100 80
如果连接成功,表示端口是开放的。
2.2 Windows环境下
可以使用以下方法来查看特定端口是否开放:
-
使用 Telnet 命令:
打开命令提示符(Command Prompt)并运行以下命令,将
<IP地址>
替换为目标 IP 地址,<端口号>
替换为要检查的端口号:telnet <IP地址> <端口号>
例如,要检查 IP 地址为 192.168.1.100 的主机上的端口 80 是否开放,可以运行:
telnet 192.168.1.100 80
如果端口是开放的,你将看到成功的连接消息。如果连接失败,表示端口可能是关闭的或受到防火墙的阻止。
-
使用 PowerShell 的
Test-NetConnection
命令:打开 PowerShell 并运行以下命令,将
<IP地址>
替换为目标 IP 地址,<端口号>
替换为要检查的端口号:Test-NetConnection -ComputerName <IP地址> -Port <端口号>
例如,要检查 IP 地址为 192.168.1.100 的主机上的端口 80 是否开放,可以运行:
Test-NetConnection -ComputerName 192.168.1.100 -Port 80
该命令将提供关于连接状态的信息,包括是否成功连接到该端口。
这些方法可以帮助你在 Windows 环境中检查特定端口是否开放。请注意,如果你尝试连接到远程主机上的端口,确保你具有适当的权限,并且目标主机处于运行状态。如果连接失败,可能是因为防火墙或网络配置的问题。
3、通过内网拉取其他电脑的文件
笔者这里是kylinV10操作系统
第一点:要将虚拟机的网络适配器改为桥接模式
第二点:配置内网环境(每个公司的内网网段不一样哦)
第三点:终端连接另一台机器
- 在终端输入
ssh 主机名@地址
# 比如我的是
ssh kylin@192.168.0.213
# 然后需要输入你要远程连接的那台主机的虚拟机登陆密码
2. 然后在你想存放从远程拷贝过来的文件的位置打开终端
输入命令
scp -r 主机名@地址:需要拷贝的文件的路径 .
# 笔者这里是
scp -r kylin@192.168.0.213:/data/king_check/ .
# 注意最后还有一个点的,指的是当前目录