linux系统中如何验证网络端口通不通

  • 前言
  • 相关命令详解
    • telnet命令
      • 具体的用法
      • 端口不通的时候:
      • 端口开启的时候:
      • telnet 测试端口连通之后,还有惊喜
      • 如何退出 telnet命令
        • 第一种方法
        • 第二种方法
    • nc命令
      • 具体用法
      • 端口不通的时候:
      • 端口开启的时候:
      • nc命令连通端口之后也是具备可以发送和接收信息的功能
      • 如何退出nc命令
      • nc命令很强大
  • 命令很强大但是有可能受环境限制
    • 为了适应环境,功能简配
    • 深处逆境,总有办法绝处逢生
      • 端口不通的时候
      • 端口正常的时候
  • 简单介绍一下 netstat 命令
    • netstat 命令参数介绍
    • netstat 状态介绍
      • 服务器的监听状态:
      • TCP连接时候的三次握手状态时候的
      • TCP连接成功的状态
      • TCP断开连接四次挥手时候的状态

前言

我们在linux系统网络调试中经常会遇到需要测试验证对应的端口是否正常的场景,接下来讲解一下常用的方法。

相关命令详解

telnet命令

具体的用法

telnet serverIP port
注意事项是 serverIP和port之间需要用空格分开
具体的操作:

端口不通的时候:

ggd@ubuntu:~$ telnet 192.168.70.1 20
Trying 192.168.70.1...
telnet: Unable to connect to remote host: Connection refused
ggd@ubuntu:~$

端口开启的时候:

ggd@ubuntu:~$ telnet 192.168.70.1 8080
Trying 192.168.70.1...
Connected to 192.168.70.1.
Escape character is '^]'.

需要注意的是**Connected to 192.168.70.1.表示对应的端口是通的**

telnet 测试端口连通之后,还有惊喜


大家通过上图可以了解,当通过telnet命令连通对应的端口之后,可以通过终端给对应的服务器发送消息,另外同时也可以接收服务器发送的消息

如何退出 telnet命令

大家在测试端口的时候如果对应的端口连通之后,此时该命令处于阻塞状态,不知道该怎么退出

第一种方法

先按 ctrl + ]
然后再按 ctrl + D

第二种方法

先按 ctrl + ]
然后再输入quit

nc命令

具体用法

nc -v serverIP port
-v 即为将命令执行信息详细输出

端口不通的时候:

ggd@ubuntu:~$ nc -v 192.168.70.1 20
nc: connect to 192.168.70.1 port 20 (tcp) failed: Connection refused
ggd@ubuntu:~$

端口开启的时候:

ggd@ubuntu:~$ nc -v 192.168.70.1 8080
Connection to 192.168.70.1 8080 port [tcp/http-alt] succeeded!

nc命令连通端口之后也是具备可以发送和接收信息的功能

如何退出nc命令

ctrl + D 或者 ctrl + C 都可以结束

nc命令很强大

nc命令 号称 网络工具中的瑞士军刀,测试端口是否通断只是牛刀小试

nc命令 还可以 实现 端口扫描、文件传输、在线聊天、验证UDP端口后续有机会再出文章详细讲解

命令很强大但是有可能受环境限制

为了适应环境,功能简配

大家看到上面针对 telnet 或者 nc 命令都是在虚拟机上执行的,但是有的时候,排查问题的时候是在开发板上进行的,正因为在开发板上,所以我们移植的busybox版本有所不同,因此 telnet 和 nc支持的命令参数有可能不全或者执行对应的命令之后没有相关的信息可供参考

深处逆境,总有办法绝处逢生

虽然telnet 和 nc 功能简配,但是最基础的功能还是有的,我们此时可以再结合 netstat 来实现我们的端口测试
话不多说直接上操作

端口不通的时候


telnet 和 nc都有对应的提示信息,有这样的提醒我们感到很欣慰
因为这个信息能直观的看到端口是不通的

端口正常的时候



通过上图可以看出,执行完命令之后处于阻塞状态,但是我们此时不能下结论说这个端口没问题,我们需要用真实的证据来证明,此时就用到了netstat -atpn命令

注意看红框和黄色箭头的标注,我们需要在 Foreign Address 和 PID/Program name 找到我们测试的IP、端口 和对应的进程名称,然后查看State状态是否是 **ESTABLISHED状态,如果是ESTABLISHED**表明端口正常如果不是该状态表示端口不通

简单介绍一下 netstat 命令

该命令是是一个监控TCP/IP网络的非常有用的工具,它可以显示路由表、实际的网络连接以及每一个网络接口设备的状态信息

netstat 命令参数介绍

-a:显示所有连接的Socket
-t:展示TCP连接相关的信息
-p: 就是显示指定协议的信息
-n:直接使用IP,不经过域名服务器(优点:程序响应快,缺点:只能看到IP,看不到域名信息)

netstat 状态介绍

简单介绍一下state几种常见的状态
描述的时候TCP在各个时期的状态

服务器的监听状态:

LISTENING:监听来自客户端的TCP的连接请求,只有TCP服务器的时候才会有这样的状态

TCP连接时候的三次握手状态时候的

1.SYN-SENT:发送连接请求后等待匹配的连接请求,客户端发送连接请求
2.SYN-RECEIVED:再收到和发送一个连接请求后等待对方对连接请求的确认,对方发送回来的确认连接信息

TCP连接成功的状态

ESTABLISHED:一个完整的TCP连接建立成功

TCP断开连接四次挥手时候的状态

1.FIN-WAIT-1:等待TCP连接中断请求
2.FIN-WAIT-2:TCP等待连接中断请求信息
3.CLOSE-WAIT:等待从本地用户发来的连接中断请求信息
4.CLOSING:等待TCP对连接中断的确认信息
5.LAST-ACK:等待原来的发向TCP的连接中断请求的确认信息
6.TIME-WAIT:等待一段时间用来确保TCP接收到连接中断请求的确认信息
7.CLOSED:没有任何连接状态

linux系统中如何验证网络端口通不通相关推荐

  1. linux下开放sftp端口,如何在 Linux 系统中如何更改 SFTP 端口

    如何在 Linux 系统中如何更改 SFTP 端口 SFTP(SSH文件传输协议)是一种安全文件协议,用于通过加密连接在两个主机之间传输文件. 它还允许您对远程文件执行各种文件操作并恢复文件传输. S ...

  2. ftp改为sftp_如何在 Linux 系统中如何更改 SFTP 端口

    如何在 Linux 系统中如何更改 SFTP 端口 SFTP(SSH文件传输协议)是一种安全文件协议,用于通过加密连接在两个主机之间传输文件.它还允许您对远程文件执行各种文件操作并恢复文件传输. SF ...

  3. centos sftp客户端 c 源码_如何在 Linux 系统中如何更改 SFTP 端口

    如何在 Linux 系统中如何更改 SFTP 端口 SFTP(SSH文件传输协议)是一种安全文件协议,用于通过加密连接在两个主机之间传输文件.它还允许您对远程文件执行各种文件操作并恢复文件传输. SF ...

  4. linux校时 某个服务器,Linux系统中如何进行网络校时?

    linux系统对于大多数用户来说,肯定没有windows系统那么熟悉,下文介绍了Linux系统中如何进行网络校时方法,具体内容如下所述. 我们都知道在Linux系统上有两个时间,一个是Linux系统的 ...

  5. 在Linux系统中构建虚拟网络

    什么是NAT 如何设置NAT 在虚拟机设置中,输入ifconfig查看网络配置,会出现没有此命令的提示,需要yum安装net-tools工具包. VMware15中点击虚拟机设置,把网络连接选择为NA ...

  6. Linux上网络端口通不通如何测试

    方法1:telnet命令 telnet命令是测试网络最常用的工具,使用方式telnet 远程ip port. 如图,是网络端口通和不通的两种情况,当出现telnet: connect to addre ...

  7. linux系统中怎么设置网络,vmware中linux怎么设置网络

    vmware中linux怎么设置网络 本站整理   发布时间:2009-03-10 12:18:33   作者:jb51.net   我要评论 如果你的XXX卡没被内核支持,又怕自己编译的内核会造成系 ...

  8. linux 测试网络端口通不通_【干货】网络中的各种互通与不通

    关注我,你的眼睛会怀孕 同一个vlan同一个网段的ip地址能够直接互通,那么同一个vlan不同的网段能不能互通呢?本期我们推荐一篇文章,可以解决大家在网络中遇到的一些奇怪的问题,也是加深对网络的理解. ...

  9. linux怎么修改sftp默认端口,如何在 Linux 系统中如何更改 SFTP 端口

    SFTP(SSH文件传输协议)是一种安全文件协议,用于通过加密连接在两个主机之间传输文件. 它还允许您对远程文件执行各种文件操作并恢复文件传输. SFTP可以替代旧版FTP协议. 它具有FTP的所有功 ...

最新文章

  1. 如果不发论文,我们用什么证明自己的科研实力?
  2. Exchange 2007更改用户收发邮件大小限制
  3. 剑指Offer:剪绳子(动态规划、贪婪算法)
  4. C#中文件和byte[]互换问题
  5. 吃下去的东西老是往上翻上来_这间日日火爆的面馆,当年海藻带宋思明吃过
  6. RAISERROR (Transact-SQL)
  7. Android媒体解码MediaCodec,MediaExtractor
  8. java 需要class interface 或enum_阿里P8教你Java注解与反射
  9. 特斯拉造人、小鹏骑马、小米遛狗,准车企们为何集体盯上了机器人生意?
  10. 虚拟环境--virtualenv
  11. Java新手学习路线
  12. 12月19日绝地求生服务器维护公告,绝地求生12月19日更新到几点 绝地求生正式服更新维护公告...
  13. JavaWeb-Web请求过程
  14. 结合百度地图城市编码的数据表
  15. 轻量级的java HTTP Server——NanoHttpd
  16. 若依RuoYi框架修改器
  17. python爬贴吧回复内容_Python爬虫_获取贴吧内容
  18. 一张图看懂阿里云网络产品[七]共享流量包
  19. 【前端】JS的BOM和DOM,事件,表单验证案例
  20. 培养自己的核心竞争力

热门文章

  1. 南京理工大学计算机专业考研,南京理工大学计算机专业考研复试经验
  2. 计算机视觉领域较好论文汇总
  3. 计算机和资源管理器窗口有何区别,办公文秘班,计算机一级考试必学第二课:Windows资源管理...
  4. java mht转html文件
  5. 7723java版_轩辕本纪_JAVA游戏免费版下载_7723手机游戏[www.7723.cn]
  6. MSD3683QTA芯片介绍
  7. 【艾琪出品】-【网页设计与网站建设 】测试题系列三
  8. 5G MEC边缘云组网方案与业务案例分析
  9. Ceph cache tier 中 flush 和 evict 机制源码分析
  10. EIA and JEDEC