外网远程控制如何设置

jj4599 2011-11-06 07:26:22
用 VB winsock tcp协议做了个远程控制程序,

1、局域网已经测试连接成功了
2、我的是电信拨号上网的外网用户,没有路由器,
3、我这边作服务器,

程序本身没有问题,要是有路由器也能连接成功,问题是有以上3点该如何设置才能让客户端连接成功呢?
...全文
1491 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
没路由,申请个动态域名,运行其客户端,您就可以连接您的动态域名了。
去www.changeip.com申请个免费的,很稳定,我一直用(当然,主要是我的软路由内置),changeip自己有客户端的

前提是,您ISP分配给您的ip是公网ip,并且还要没有封端口……
  • 打赏
  • 举报
回复
http://user.qzone.qq.com/280831462/blog/1193532115
一个使用软路由的配置文档,偶空间
wubirong 2011-11-25
  • 打赏
  • 举报
回复
没路由的话www.ip138.cn看你的IP,客户端直接连接这个IP跟端口就行了...
有路由只能做映射了。
UDP打洞谁有VB6的代码,以前看过C#的代码有点看不太明白
MOODSKY2002 2011-11-11
  • 打赏
  • 举报
回复
如果想做外网远程控制还是用UDP打洞吧。TCP需要映射的比较麻烦。
jj4599 2011-11-09
  • 打赏
  • 举报
回复
客户端IP设置没错,防火墙设置也没错,为什么telnet 我的外网IP 端口 没用呢,如果telnet 本地IP192.168.0.1 端口 却可以呢,哪里出问题了,如果这个解决了估计那个远程就可以用了,精英们都来呀
熊孩子开学喽 2011-11-09
  • 打赏
  • 举报
回复
首先服务端地址要可寻, 否则远程端连对方IP都不知道更谈何控制了.
然后防火墙端口要打开, 无论服务器端PC端口还是它连上网的路由器, 要打开响应端口(默认是3389)
再后面就和局域网一样了.
现在还是人类 2011-11-06
  • 打赏
  • 举报
回复
通常家庭上网都是PPPOE拨号的,这种拨号得到的Internet IP 地址有时候是伪IP的,但有时候
也可能是公网 IP 地址,如果是公网 IP 地址,只要没什么防火墙阻挡,基本上直接用客户端连
接到你的 IP 地址就可以了,也可以用“花生壳”这种软件弄个域名来给客户端连接,这样就更加
方便程序的编写,如果是伪IP,就只有通过 P2P 技术实现了。但 P2P 需要有一台公网服务器交
换用户数据做打洞的告知处理,如果有条件,可以用 P2P 技术实现,即使是伪IP都可以点对点通讯。
还有,局域网的环境与 Internet 有很大不同,开发 Internet 程序和局域网可以说有很多要注意
的地方,特别是 winsock 控件,有时候还会出现数据收发不一致的现象,比如你发个字符串"1234"
可能收到的是 "1234" & String(4,0) 或 "123" 也不一定。
所以为此要做比较多的校验、过滤等操作,而且要注意握手协议的设置,不要太依赖于数据识别。
还有就是 VB 做这样的网络服务程序其实不是很适合的,因为VB不好使用多线层操作,这样会占用
大量的CPU与内存资源。如果用 winsock 控件数组的方式,连接数也很有限,而且反应也慢。
比如就内网来说,如果你尝试用 VB + winsock 控件做 HTTP 代理服务,你访问几个网页就会发现,
VB 的这种方式不适合开发正真的网络服务器程序。不过如果做些小项目,几个点慢慢通讯,不是很
要求效率的,VB这种方式还是可以的。
如果要开发专业的网络服务程序,建议还是用 C++ 用 SOCK API + 多线程来开发,最好加上线程
池管理,不然线程太多也麻烦的。


1,502

社区成员

发帖
与我相关
我的任务
社区描述
VB 网络编程
社区管理员
  • 网络编程
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧