服务器端口测试是否正常,运维一般使用telnet来检查,但它有局限性,服务器的端口必须存在服务运行。

这时使用nc可以在服务端模拟开启一个端口,再通过nc测试此端口,好用!

nc是netcat工具的简称,一个网络工具,可以用来端口扫描、文件传输等功能。

centos上面安装也很简单:

yum install nc -y

nc常用功能

1、实现任意TCP/UDP端口的侦听,nc可以作为server以TCP或UDP方式侦听指定端口

2、端口的扫描,nc可以作为client发起TCP或UDP连接

3、机器之间传输文件

4、机器之间网络测速

一般nc只用来做TCP/UDP协议的端口测试,其它功能少用!

nc帮助说明

# nc --help
Ncat 7.50 ( https://nmap.org/ncat )
Usage: ncat [options] [hostname] [port] Options taking a time assume seconds. Append 'ms' for milliseconds,
's' for seconds, 'm' for minutes, or 'h' for hours (e.g. 500ms).
-4 Use IPv4 only
-6 Use IPv6 only
-U, --unixsock Use Unix domain sockets only
-C, --crlf Use CRLF for EOL sequence
-c, --sh-exec <command> Executes the given command via /bin/sh
-e, --exec <command> Executes the given command
--lua-exec <filename> Executes the given Lua script
-g hop1[,hop2,...] Loose source routing hop points (8 max)
-G <n> Loose source routing hop pointer (4, 8, 12, ...)
-m, --max-conns <n> Maximum <n> simultaneous connections
-h, --help Display this help screen
-d, --delay <time> Wait between read/writes
-o, --output <filename> Dump session data to a file
-x, --hex-dump <filename> Dump session data as hex to a file
-i, --idle-timeout <time> Idle read/write timeout
-p, --source-port port Specify source port to use
-s, --source addr Specify source address to use (doesn't affect -l)
-l, --listen Bind and listen for incoming connections
-k, --keep-open Accept multiple connections in listen mode
-n, --nodns Do not resolve hostnames via DNS
-t, --telnet Answer Telnet negotiations
-u, --udp Use UDP instead of default TCP
--sctp Use SCTP instead of default TCP
-v, --verbose Set verbosity level (can be used several times)
-w, --wait <time> Connect timeout
-z Zero-I/O mode, report connection status only
--append-output Append rather than clobber specified output files
--send-only Only send data, ignoring received; quit on EOF
--recv-only Only receive data, never send anything
--allow Allow only given hosts to connect to Ncat
--allowfile A file of hosts allowed to connect to Ncat
--deny Deny given hosts from connecting to Ncat
--denyfile A file of hosts denied from connecting to Ncat
--broker Enable Ncat's connection brokering mode
--chat Start a simple Ncat chat server
--proxy <addr[:port]> Specify address of host to proxy through
--proxy-type <type> Specify proxy type ("http" or "socks4" or "socks5")
--proxy-auth <auth> Authenticate with HTTP or SOCKS proxy server
--ssl Connect or listen with SSL
--ssl-cert Specify SSL certificate file (PEM) for listening
--ssl-key Specify SSL private key (PEM) for listening
--ssl-verify Verify trust and domain name of certificates
--ssl-trustfile PEM file containing trusted SSL certificates
--ssl-ciphers Cipherlist containing SSL ciphers to use
--version Display Ncat's version information and exit

nc常用案例

TCP监听测试

  • nc可作为server端192.168.10.11启动一个tcp的监听

nc -l 80

  • 客户端测试方法:直接telnet该机器ip+端口

telnet 192.168.10.11 80

或:nmap 192.168.10.11 -p 80

UDP监听测试

  • nc作为server端启动一个udp的监听

nc -lu 80

通过netstat可以看到udp协议已经监听:

> # netstat -tunlp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
udp 0 0 0.0.0.0:80 0.0.0.0:* 15401/nc
  • 客户端测试方法:(telnet只能测试tcp协议)

nc -vuz 192.168.10.11 80

(u表示udp端口,v表示可视化输出,z表示扫描时不发送数据)

使用nc传输文件

使用nc传输文件不用scp或rsync那种输入密码的操作,当然也存在一定安全性。

例如:要把A机器上的一个sql文件发送到B机器上

(需要先开启侦听B机器端口,再到A机器发送数据到该端口)

步骤1,先在B机器上启动一个接收文件的监听,格式如下

nc -l 888 > zabbix.sql

步骤2,在A机器上往B机器的888端口发送数据,把下面sql包发送过去

nc 192.168.10.11 888 < zabbix.sql

也可通过nc传输目录,但这里不推荐使用,暂不举例。

网络测试

这里也不推荐使用nc,直接使用speedtest,简单:

wget -O speedtest-cli https://raw.githubusercontent.com/sivel/speedtest-cli/master/speedtest.py
chmod +x speedtest-cli
./speedtest-cli

解决telnet 无法断开问题

CTRL+]键,这时会强制退到telnet命令界面下,再输入quit退出就行。

centos 端口测试之nc使用的更多相关文章

  1. Centos下安装nc命令工具安装以及使用

    1)netcat(nc)是一个简单而有用的工具,被誉为网络安全界的“瑞士军刀”,不仅可以通过使用TCP或UDP协议的网络连接读写数据,同时还是一个功能强大的网络调试和探测工具,能够建立你需要的几乎所有 ...

  2. centos 端口开放及关闭

    之前有讲过公司新买的服务器使用的是CentOS 5.5,部署好Tomcat之后却发现输入114.80.*.*:8080(即ip:8080)却无法显示Tomcat默认的首页.因为以前部署在Win Ser ...

  3. centos 端口开放及关闭 【转】

    之前有讲过公司新买的服务器使用的是CentOS 5.5,部署好Tomcat之后却发现输入114.80.*.*:8080(即ip:8080)却无法显示Tomcat默认的首页.因为以前部署在Win Ser ...

  4. centos端口管理

    centos 6.5 ###############配置filter表防火墙############### #清除预设表filter中的所有规则链的规则iptables -F #清除预设表filter ...

  5. Linux测试UDP端口(nc)

    # nc -vuz serveripaddress 123 Connection to serveripaddress 123 port [udp/ntp] succeeded! 结果证明UDP 12 ...

  6. CentOS 端口和防火墙操作

    Centos 7 端口和防火墙命令: 查看已经开放的端口:firewall-cmd --list-ports 开启端口:firewall-cmd --zone=public --add-port=80 ...

  7. Linux(centos)使用nc命令发送测试数据

    安装 yum -y install nmap-ncat 简单使用 nc -lk 7777 # 开启一个本地7777的TCP协议端口,由客户端主动发起连接,一旦连接必须由服务端发起关闭 nc -vw 2 ...

  8. CentOS 端口映射

    一个合作单位给我创建了十几台虚拟服务器做支撑.但是只给负载均衡绑定了公网IP.由于这个支撑的服务需要测试和调优,经常要往服务器上传class或者修改数据库.为了方便操作,我打算在负载均衡服务器上做端口 ...

  9. centos 端口iptables配置

    1.安装iptables yum install iptables* -y 2.打开端口 iptables -I INPUT -p tcp --dport -j ACCEPT 3.查看本机关于IPTA ...

随机推荐

  1. 操作系统-存储管理(6)buffer/cache/swap

    为了提高文件系统性能,内核利用一部分物理内存分配出缓冲区,用于缓存系统操作和数据文件,当内核收到读写的请求时,内核先去缓存区找是否有请求的数据,有就直接返回,如果没有则通过驱动程序直接操作磁盘. 缓存 ...

  2. Protocol buffers--python 实践 简介以及安装与使用

    简介: Protocol Buffers以下简称pb,是google开发的一个可以序列化 反序列化object的数据交换格式,类似于xml,但是比xml 更轻,更快,更简单.而且以上的重点突出一个跨平 ...

  3. 可爱的python

    可爱的python 作者:  哲思社区出版社: 电子工业出版社 优点 1. 案列讲解很详细,前几章的内容恰好是我想要了解的,例如利用python os模块读取磁盘的文件,或者获得文字的编码方式.这些内 ...

  4. 牛客网PAT练兵场-科学计数法

    题目地址:https://www.nowcoder.com/pat/6/problem/4050 题解:模拟题 /** * Copyright(c) * All rights reserved. * ...

  5. 产品经理培训教程视频大全与模板Axure rp9与8视频教程元件库模板

    注意:请仔细阅读购买,一旦发货百度网盘链接不能退~ 自动发邮件到买家留言处的邮箱,或注册淘宝时的邮箱自动通过旺旺给您发货还可以访问网页提取链接自助提取(复制到浏览器): http://4k5.cn/V ...

  6. 每日一学-python calendar

    python模块之calendar方法详细介绍 1.首先我们看下calendar的内置函数和相关的属性: import calendar dir(calendar) ['Calendar', 'EPO ...

  7. JMH--一款由OpenJDK开发的基准测试工具

    什么是JMH JMH 是 OpenJDK 团队开发的一款基准测试工具,一般用于代码的性能调优,精度甚至可以达到纳秒级别,适用于 java 以及其他基于 JVM 的语言.和 Apache JMeter ...

  8. 基于Appium的UI自动化测试

    为什么需要UI自动化测试 移动端APP是一个复杂的系统,不同功能之间耦合性很强,很难仅通过单元测试保障整体功能.UI测试是移动应用开发中重要的一环,但是执行速度较慢,有很多重复工作量,为了减少这些工作 ...

  9. nginx配置过程中出现的问题

    在安装nginx时我们先创建用户useradd -s /sbin/nologin -M nginx 不然会报nginx: [emerg] getpwnam("nginx") fai ...

  10. 【干货满满】1.5w字初中级前端面试复习总结

    前言 金九银十,又是一波跑路.趁着有空把前端基础和面试相关的知识点都系统的学习一遍,参考一些权威的书籍和优秀的文章,最后加上自己的一些理解,总结出来这篇文章.适合复习和准备面试的同学,其中的知识点包括 ...