telnet: Unable to connect to remote host: Connection refused
Posted qq_34132502
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了telnet: Unable to connect to remote host: Connection refused相关的知识,希望对你有一定的参考价值。
客户端使用telnet尝试连接服务端的23456端口,运行
$ telnet 192.168.136.122 23456
时出现此错误
首先使用netstat -nt | grep 23456
检查端口23546的使用情况,没有输出。再使用netstat -napt
检查所有tcp端口的使用情况
发现没有这个程序,更没有这个使用端口。
检查之后发现是忘了写listen
语句……,加上
ret = listen(sorck, backlog);
assert(ret != -1);
之后,再次使用命令netstat -napt
发现已经有了这个程序
但是端口号不是23456,且每次的端口号都不一样。虽然客户端使用telnet
连接这几个端口号都可以连通,说明应该是端口号设置有问题,且不是端口号冲突,因为冲突的话assert
语句就会直接报错了。
检查后发现是忘了给给address.sin_port
赋值……将int port
转换成网络字节序之后赋给address.sin_port
address.sin_port = htons(port)
编译运行,之后就都正常了
【注】
netstat使用示例
1)列出所有端口
netstat -anp
2)列出所有 tcp 端口
netstat -antp
3)列出所有 udp 端口
netstat -anup
4)只显示所有监听端口
netstat -lnp
5)只列出所有监听 tcp 端口
netstat -ltnp
6)只列出所有监听 udp 端口
netstat -lunp
7)只列出所有监听 UNIX 端口
netstat -lxnp
8)找出程序运行的端口
netstat -anp | grep ssh
NOTE:并不是所有的进程都能找到,没有权限的会不显示,使用 root 权限查看所有的信息。
10)找出运行在指定端口的进程
netstat -anp | grep ‘:3306’
11)持续输出 netstat 信息(每隔一秒输出网络信息)
netstat -cnp
12)显示所有端口的统计信息
netstat -s
以上是关于telnet: Unable to connect to remote host: Connection refused的主要内容,如果未能解决你的问题,请参考以下文章
[python] disconnected: unable to connect to renderer解决方法
RedisConnectionException: Unable to connect
RedisConnectionException: Unable to connect
start: Unable to connect to Upstart: Failed to connect to socket /com/ubuntu/upstart: