论坛信息 |
最新加入:
l_hx
|
今日帖子:
5
|
在线用户:
2
|
|
|
|
导航: |
论坛 -> 网络通讯
斑竹:liumazi,sephil |
|
作者: |
tzjwj (tzjwj) |
★☆☆☆☆ |
-
|
普通会员 |
|
2023/3/13 9:05:50 |
标题: |
已知内网服务器TCP或UDP端口号,请问该服务器如何自动获取对应的外网端口号 |
浏览:297 |
|
加入我的收藏 |
楼主: |
已知内网服务器TCPserver或UDPserver控件端口号,请问该服务器如何自动获取对应的外网端口号。 如:内网接口设置为133.103.168.3,端口为7086,外网已知202.178.222.189,怎么该控件获取对应的外网端口号?
----------------------------------------------
- |
作者: |
|
2023/3/13 11:13:03 |
1楼: |
打洞?
----------------------------------------------
-
|
作者: |
|
2023/3/13 16:11:20 |
2楼: |
理论上它自己是无法知道的,不同的 NAT 的分配机制完全不同,这个端口号是 NAT 路由器分配的。如果要知道,通用的办法,最好有个外网服务器。
有一些 NAT 路由器支持 UPNP,那么你可以运行 UPNP 协议,发命令给 NAT 路由器,要求它打开某个指定端口号,或者去读它给出的端口号。但这种操作不是通用的操作。
----------------------------------------------
-
|
作者: |
|
2023/3/13 16:15:58 |
3楼: |
端口65000多个而已. 一个一个测..
----------------------------------------------
delphi界写python最强, python界写delphi最强. 写自己的代码, 让别人去运行.
|
作者: |
|
2023/3/13 16:47:44 |
4楼: |
内网server穿透到外网,这个对外的端口不是网管设置的么? 比如我在网关上设置一个端口映射,内网server端没有渠道可以获取这个端口映射信息啊
而且,内网server获取这个对外端口后又能做什么呢? 线上通知客户端这个端口号?又变成先有蛋还是先有鸡的问题了
----------------------------------------------
-
|
作者: |
|
2023/3/13 17:00:19 |
5楼: |
3楼,我刚刚算了一下,1秒1个,18小时。
----------------------------------------------
-
|
作者: |
tzjwj (tzjwj) |
★☆☆☆☆ |
-
|
普通会员 |
|
2023/3/14 8:38:35 |
6楼: |
自己无权使用网关服务器,想办法知道动态分配给我的端口号,然后通知外网登录这个端口啊。
----------------------------------------------
-
|
作者: |
|
2023/3/14 10:47:51 |
7楼: |
6楼,如果你是做一个服务器,这个服务器还无法获得一个已知的端口号,那即便现在你想办法知道了端口号,也不保证以后会不会改变。
做服务器的话,通常需要一个保持不变的对外端口号,那显然正常来说是设置固定的,已知的。
----------------------------------------------
-
|
作者: |
|
2023/3/14 11:46:51 |
8楼: |
5楼, 开1000个线程, 运行时间可以缩小到65秒多一点. 每个线程的负载是很轻的,主要是在等待响应,因此1000个线程不会导致cpu利用率太高.
----------------------------------------------
-
|
作者: |
|
2023/3/14 13:05:44 |
9楼: |
@6楼 怎么感觉有点要干坏事的意思? 哈哈
你这个有点TCP穿透的意思,不过需要外网一个server在开始的时候拉拉皮条
----------------------------------------------
-
|
作者: |
|
2023/3/14 14:52:36 |
10楼: |
8 楼的意思不错,简单粗暴还能干活。哈哈。
----------------------------------------------
-
|
|