草庐IT

sockets - 需要帮助澄清 TCP 端口

在网上研究端口,我发现它有很多不同的描述方式。主要方式是端口就像计算机上的一扇门,由特定进程使用。第二种通常解释的方式是,它只是一个标记,是特定进程在IP地址之上的额外标识符。我难以理解的是,如果端口在某种程度上像门一样实际上是“物理的”。数据是否真的通过端口?如果是这样,那么是否可以通过同一个端口同时发送和接收数据?如果端口更像是一个标签,那么通过防火墙“打开”端口是什么意思?最后一个问题,发送进程发送数据需要端口吗?我知道它必须将数据发送到接收端的特定端口,并且必须指定其用于接收回数据的本地端口,但是当它进行实际发送时,是否需要使用端口(并且是它与它已经用于接收的端口相同)?非常感

ssh - 如何通过 JSch : port forwarding, ssh 命令或 SSH 隧道多次 ssh?

通过终端,我可以多次SSH连接到服务器:(客户端--->网关--->服务器1---->服务器2---)但是现在要通过Java的JSch库来实现,怎么办呢?首先尝试了端口转发,但在终端上我没有这样做(没有在ssh中设置-R-L参数)。然后我遇到了问题HowtoSSHtoaserverbehindanotherSSHserverusingJSch?,但我不明白如何创建tcp隧道! 最佳答案 端口转发是最好的方法。您不需要在终端中进行端口转发,因为您通过键入ssh命令手动连接到第二部分。虽然您可以使用JSch将其自动化,但它并不是尝试模拟

sql-server - 谷歌搜索设备 : com. microsoft.sqlserver.jdbc.SQLServerException : The TCP/IP connection to the host "xyz" port 1433 has failed.

我正在为数据库(SQL)部署GoogleSearchAppliance连接器。当我运行“run.bat”时,我在日志中收到一条错误消息:java.io.IOException:com.microsoft.sqlserver.jdbc.SQLServerException:TheTCP/IPconnectiontothehost"xyz",port1433hasfailed.Error:"null.Verifytheconnectionproperties.MakesurethataninstanceofSQLServerisrunningonthehostandacceptingTCP

sockets - TCP - 不同应用程序可以同时将同一客户端端口用于不同连接吗?

在TCP中,不共享相同可执行镜像的不同进程(例如,没有fork())是否有可能在Windows、Linux或OSX上使用相同的客户端端口?我相信这与使用setsockopt()设置的套接字选项SO_REUSEADDR和SO_REUSEPORT特别相关。据我所知,我相信同一个进程/图像可以做到这一点,但我还没有找到关于多个进程/图像的信息。我想这在理论上是可能的,因为每个套接字都是由5值元组[IP_PROTO,src_ip:src_port,dst_ip:dst_port]定义的。所以我假设,只要共享一个客户端端口的多个TCP连接没有建立到同一个dst_ip:dst_port,这在理论上

java - 地址已在使用 : JVM_Bind but no process is listed using port with netstat

我有一个使用ServerSocketAPI(Java8)并绑定(bind)到本地端口12000的java进程。进程在Windows服务包装器(exe4j)下运行。我有一个在凌晨4点运行的计划任务,该任务会停止服务并在几秒钟后重新启动它。该过程安装在400多个客户位置。直到大约上周五,一切都运行顺利。一些进程未能在凌晨4点正常重启。在我能够连接并验证的2台服务器上,重启失败,同时显示“地址已在使用:JVM_Bind”。系统似乎仍在使用端口12000。我使用了我知道的所有工具(processexplorer、tcpview、netstat-ano等)来尝试找到进程...但没有成功。只有机器

java - socket.connect(endpoint) 和 new Socket(ip,port) 有什么区别

当创建到serversocket的客户端连接时,我们可以通过两种方式创建客户端套接字我的问题是以下两种方法之间的区别是什么,InetAddressaddr=InetAddress.getByName("localhost");SocketAddresssockaddr=newInetSocketAddress(addr,1111);SocketclientSocket=newSocket();clientSocket.connect(sockaddr);还有另一种方法SocketclientSocket=newSocket("localhost",1111);有什么优点和缺点谢谢。

python-3.x - Python3.5 Asyncio TCP 扫描器

我是Python3.5的新手,除了在Python2.7中少量使用Twisted之外,一般来说是Async。我正在将它构建到一个更大的应用程序中,我需要一小部分(而不是一个单一的框架)来执行TCP端口扫描。importasynciofromrandomimportSystemRandomdefrun(task,*,loop=None):ifloopisNone:loop=asyncio.get_event_loop()returnloop.run_until_complete(asyncio.ensure_future(task,loop=loop))asyncdefscanner(ip

port - 如何判断一个端口是打开还是关闭

我怎么能说一个端口是打开的还是关闭的。开放端口和关闭端口的具体含义是什么。 最佳答案 我最喜欢检查特定端口是打开还是关闭的工具是telnet.您会在所有操作系统上找到此工具。语法是:telnet这是打开端口时的样子:telnetlocalhost3306Trying127.0.0.1...Connectedtolocalhost.Escapecharacteris'^]'.这是关闭端口时的样子:telnetlocalhost9999Trying127.0.0.1...telnet:connecttoaddress127.0.0.1:

c# - 在 C# 应用程序 + ip :port proxy 中使用 fiddler

我正在从事一个涉及使用ip:port代理的项目。我的C#应用程序使用geckofx网络浏览器,它允许我指定一个代理来路由流量。我需要能够看到fiddler中的流量,但是每当我尝试通过我的C#应用程序的网络浏览器加载网页时(配置了ip:port代理,我在fiddler中看不到任何流量。我也没有看到任何没有代理的流量。通过像chrome这样的网络浏览器浏览,我可以看到所有经过的流量……我错过了什么??为什么我无法查看来self的C#应用的流量? 最佳答案 Fiddler是一个代理服务器;它看到发送给它的流量。它在启动时将自己注册为默认系

windows-7 - 捕获和重定向来自给定 ip :port to target ip:port 的传出流量

关闭。这个问题不符合StackOverflowguidelines。它目前不接受答案。想改善这个问题吗?更新问题,使其成为StackOverflow的on-topic。8年前关闭。Improvethisquestion在Windows7上,我有一个SSH隧道在我需要访问的本地127.0.0.1:34567地址上运行,因此我可以在SSH代理的帮助下访问12.34.56.78:8080,因为我无法直接访问该IP(由于不在白名单中)。因此,我的基本简单目标是,在Windows上,每当我从任何地方(例如我的浏览器)请求12.34.56.78:8080时,我都希望请求被透明地转移到127.0.0