现在有两台机器 a 和 b,a 机器上装有基于 c#编写的客户端程序,b 机器上装有 SQL 数据库。b 是政务云服务器,只能接收 ip 下特定端口请求,现在要设定 a 机器通过某一固定端口去访问 b 机器上的数据库,该怎么实现
1
sutra 2021-08-13 15:18:44 +08:00
你的意思是你的数据库运行在 b 的端口 1 上,但是 a 却访问不了 b 的端口 1,只能访问 b 的端口 2 ?
|
3
sutra 2021-08-13 15:25:17 +08:00
还是没有明白。
|
4
goodryb 2021-08-13 15:26:13 +08:00
|
5
moen 2021-08-13 15:26:30 +08:00
如果那个云服务器有 ssh 的话可以用 ssh 转发
|
6
goodryb 2021-08-13 15:28:09 +08:00
|
7
sutra 2021-08-13 15:31:08 +08:00
TCP Source Port 呀,为啥有这么奇怪的需求。得修改数据库连接驱动程序吧。
|
8
NikoXu 2021-08-13 15:42:38 +08:00
这需求确实玄学
|
9
strict 2021-08-13 15:44:26 +08:00
搜索关键词: 本地端口转发
|
11
keepeye 2021-08-13 15:44:51 +08:00
限定源端口,假如只允许一个端口,那岂不是只能单线程连接?
|
12
todd7zhang 2021-08-13 16:28:46 +08:00
python 的话,client socket 直接 bind(ip, specified_port)
|
13
thtznet 2021-08-13 16:42:30 +08:00
b 上的数据库引擎的监听端口要修改为 b 开放的端口,a 客户端上的数据库连接字符串里可以指定端口访问。
|
14
jingcheng407 2021-08-13 17:06:05 +08:00
b 机器上做端口转发就行了,很简单的
|
15
jingcheng407 2021-08-13 17:09:04 +08:00
|
16
makdon 2021-08-13 22:37:50 +08:00
试试 A 机器上开个代理,然后把所有流量根据特定端口出去?
|
17
PolarBears 2021-08-14 04:46:51 +08:00
填写 政务云安全组开通申请表
|
18
PolarBears 2021-08-14 04:52:23 +08:00
政务云应该是默认 80 和 443 端口的仅入站,其余端口策略需要填写申请表开通.虽然可以用这些默认端口来实现你要的需求,但我建议还是乖乖填写申请表开通策略吧.
|
19
LLaMA2 2021-08-14 17:04:48 +08:00
4 字箴言“端口转发”
|
20
opengps 2021-08-14 23:03:48 +08:00
区分一下重点:B 做的限制,是入端口,那么让数据库工作在这个端口即可。或者用端口转发工具实现
如果做的是出端口限制,那么就难了 |
21
wxlg1117 2021-08-15 00:27:13 +08:00
试过不少端口转发之类的工具.我感觉效果最给力的是这个,推荐你试试 https://github.com/snail007/goproxy
|