网络客户/服务器程序在局域网可以连接,如何能跨互联网也能连接?

ooolinux 2018-02-08 05:41:42
比如家里电脑的客户端程序,如何连接到公司电脑上运行的服务器端程序?
公司路由器有WAN网口静态公网IP,问题是怎么得知进程端口号,程序中设置的端口号可能经过NAT之类的?
...全文
1771 34 打赏 收藏 转发到动态 举报
写回复
用AI写文章
34 条回复
切换为时间正序
请发表友善的回复…
发表回复
ooolinux 2018-02-13
  • 打赏
  • 举报
回复
@早打大打打核战争 可能人家关机了,或者emule关了,就没源了。
  • 打赏
  • 举报
回复
广义来说,只要能提供自己下载的都是源,不必完整,完整的源是种子。P2P本身合法,但是通过P2P传播未授权的版权保护内容则非法,瑞典在2009年就禁止海盗湾之类的提供P2P链接的服务器了。P2P的最大问题是不稳定,冷门资源经常下到中间就没源了。
ooolinux 2018-02-12
  • 打赏
  • 举报
回复
@早打大打打核战争 美国的公网IP数量那么庞大,可连接的公网P2P源应该还是很多吧?
ooolinux 2018-02-12
  • 打赏
  • 举报
回复
@早打大打打核战争 意思只能内网机连接外网机或外网机互连,是不是不能连接可用的下载源就少了? 源是指有完整文件的机子,还是包含有文件部分数据的机子?
ooolinux 2018-02-12
  • 打赏
  • 举报
回复
@早打大打打核战争 美国法律P2P不是合法的吗,在欧盟不合法?
  • 打赏
  • 举报
回复
只能lowid主动连接highid,highid不能主动连接lowid,lowid之间不能互连(kad网络中可以通过highid中转),源越少影响越大。emule主要是服务器被打击得太厉害了,原来基于瑞典和法国的一些热门服务器都被关了,好时光已经过去了。
ooolinux 2018-02-12
  • 打赏
  • 举报
回复
哈哈,东京不热京东热~ highid对速度影响多大? 我10几年前用emule下载过IBM的OS/2 Warp操作系统,后来就没怎么用了,emule网站很多资源都没有版权下架了。
  • 打赏
  • 举报
回复
引用 22 楼 u010165006 的回复:
@早打大打打核战争 你一般用emule下载什么资源~ highid跟公网ip有关吗?
电骡适合下载一些冷门资源,如果是热门资源速度还不如BT,我家里电脑下载一套87版忍者神龟动画片,从2014年下到现在都没下完,中间都换了一次电脑。 以前有公网IP都能获得highid,最多路由器映射一下端口,如果路由器和操作系统都支持upnp,连端口都不需要映射,但是后来不行了,大约就是2012年开始,各ISP都整上了防火墙,跟内网一样了,从防火墙外部无法主动连接内部的电脑,无论电脑有没有公网IP。
  • 打赏
  • 举报
回复
什么资源~ 难道是老刘和奶茶主演的京东热~~~
DelphixpeFan 2018-02-11
  • 打赏
  • 举报
回复
这是两种连接方式,不是先后方式,拿QQ传文件来打比方,是发送文件的客户端先把文件上传到腾讯的服务器上,接收文件的客户端,从服务器取回来;不管是离线传还是在线传都一样,都是要通过服务器中转,只不过在线传,是服务器直接从发送端获取到文件流,直接往接收端的缓冲区写而已,不是像离线传文件,先存到服务器磁盘上,感觉上你和别人在聊天,实际上都是在和服务器通信,对方也是在和服务器通信,服务器是个传话筒,你所有操作服务器都是知晓的;而直连,就是没有服务器,直接把数据从发送端的网卡通过网络设备(交换机,路由,防火墙等),发送到接收端的网卡上,象你在局域网从其他的电脑的共享文件夹中拷贝文件,就不会通过服务器做中转;服务器根本不知道你们在搞什么
ooolinux 2018-02-11
  • 打赏
  • 举报
回复
@DelphixpeFan 确实很复杂。 服务器中转的方式,以后传输的一切数据都要经过服务器吗? 还是经过服务器中转以后,两端就建立了直接连接?
DelphixpeFan 2018-02-11
  • 打赏
  • 举报
回复
内外网相通一般两种做法,直连,通过端口映射,IP地址转换,很多点对点的程序都是这种做法,安全性差;另一种服务器中转的方法,也就是客户端不时的访问服务器,把要的数据拿下来,象QQ,包括你前面说的TeamView;这种做法相对安全些,如果客户端要做坏事,你又给了足够的权限给他,他还是能搞破坏的.
DelphixpeFan 2018-02-11
  • 打赏
  • 举报
回复
这是网络安全范畴的问题,安全做得好,你获取不了,即使获取到了也只能得到假的虚拟IP和端口,比如中间加个网闸,内网电脑只和网闸通信,网闸带中间层,你不遵循它自己的通信协议根本不放你过,有些网闸还会灭活动态交互的代码,但是也不能说这就绝对安全了,总之,这是攻防的问题,没有十全十美的攻,也没有十全十美的防;像一些重要部门,如银行,证券,内外网一般会加三到四道防火墙,而且各防火墙的制造商都不相同,层层地址转换,到了你手上能看到的早就面目皆非了
ooolinux 2018-02-11
  • 打赏
  • 举报
回复
@DelphixpeFan 应该是这样的。
DelphixpeFan 2018-02-11
  • 打赏
  • 举报
回复
P2P,也就是点对点,既然叫点对点,也就不需要经过服务器中转了
ooolinux 2018-02-11
  • 打赏
  • 举报
回复
@早打大打打核战争 你一般用emule下载什么资源~ highid跟公网ip有关吗?
ooolinux 2018-02-11
  • 打赏
  • 举报
回复
@DelphixpeFan P2P软件是Peer to Peer,下载和上传的数据要经过服务器中转吗?
DelphixpeFan 2018-02-11
  • 打赏
  • 举报
回复
@ u010165006 应该是有的,这时服务器的角色相当于帮你们牵线搭桥,很多P2P软件,包括BT下载工具,电驴,为了增加下载速度,让在线用户上传一部分已经下载的资源,给其他需要下载此资源的用户,用这类软件下载时你看下载进程就能看到一些用户的IP,包括以前的快播软件,应该都是用的这种原理.
  • 打赏
  • 举报
回复
至少一端在公网上(能被直接访问到)才可以,现在的很多ISP,歌华宽带、长城宽带、移动... 看似获取了公网IP,实际仍然处于ISP的防火墙之内,相当于大局域网,和内网一样,从2012年开始,我用emule就没获得过highid。
ooolinux 2018-02-11
  • 打赏
  • 举报
回复
@DelphixpeFan 有没有可能借用服务器的中转,让两端建立直接的连接呢,建立连接以后就不需要服务器那种?
加载更多回复(14)

1,593

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 网络通信/分布式开发
社区管理员
  • 网络通信/分布式开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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