• 全部
  • VC综合技术
  • 互联网技术
  • MFC AppLauncher
  • .NET 技术
  • 界面
  • 进程
  • 算法
  • 硬件/系统
  • 数据库
  • VC++技术资源

500分求高人指点!!实现windows共享上网的服务器(不是代理服务器)是如何实现的?

seanhut 东软集团 商用软件事业部业务一部技术总监  2002-05-18 10:46:41
另外400分另外结贴给分
...全文
7 点赞 收藏 10
写回复
10 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
seanhut 2002-05-19
最后一个问题,连接共享的机器收到外界服务器的发来的回应后,如何判断该把它发给内网的那一台机器呢?
回复
xuying 2002-05-19
你从内向外访问web服务器时,web服务器看到的其实是运行连接共享的那台机器的ip地址。因此,web服务器上没有什么特殊的处理。

关键在于运行连接共享的那台机器。它接受一个内部机器的请求后,会发起一个连接,传送请求到外部的web服务器上,然后,他会将从这个连接上收到的任何数据传回到那个内部的机器上。相当于一个代理,只不过是ip层的而已。

当然这只是基本原理,里面还有一些细节问题,如果都在这说,相当于把RFC又拷贝一遍。你阅读完RFC后就很明白了。
回复
seanhut 2002-05-19
希望大家能用一个例子说明发送和接受全过程(比如一个http请求"GET / http/1.1\r\n"),
关键是服务器如何识别并回复“加了原地址包头“的请求。
谢谢大家的关注,只要讲清楚了,马上结贴给分。
回复
seanhut 2002-05-18
我问的是实现的原理,socket层
回复
wuxing 2002-05-18
windows2000的代理internet共享上网服务啊。
在网络和拨号服务中,1,建立一个连接,2,点连接的属性,3,共享,4,共享连接
回复
seanhut 2002-05-18
那外网的回复怎样发回到原来的机器上呢?
客户机是没有internet上的ip地址的呀。
回复
countrynew 2002-05-18
帮你up
回复
javanew 2002-05-18
windows起到一个软件路由的功能,发往外网的包由windows转发
回复
xuying 2002-05-18
windows实现了NAT协议而已。具体可以看RFC3022。

NAT(Network Address Translation)的需要的提出是因为一个网络的IP内部地址不能用在外部网不论是因为人原因还是因为它们在外部网不合法。在一个局域网的网络拓补学可以用很多方式改变,顾客可以改变他们的提供商,公司骨干可能重组或则提供商可能合并或分裂。不论外部网随着时间何时改变,局域网所在的节点被附以的地址肯定随着外部网的改变而改变。用户可能在这种方式的改变被隐藏在区域里,因为集中改变到单一地址转换路由器中。
基本地址转换将(在很多情况下,除了[NAT-TERM]和这个文档第6部分所有指的)允许在局域网中的主机可以透明的连接外部网和可以连接外部网中可选的主机。网络组织的建立首先是为了局域网内部的应用,还有和广域网的连接需要是这个规划的很好候补。
许多小公司,家庭办公室(SOHO)用户和电信员工在它们的办公室有多个网络节点运行TCP/UDP应用程序,但是服务提供商只有给他们在远程连通路由提供唯一的IP地址。
这个远程连接用户渐增的社区将从NAPT中获得好处,NAPT将允许在局域网中有多个节点同时用路由器附以的唯一IP地址连接远程网络。
回复
myxx 2002-05-18
WINDOWS起到一个网关的作用!它现将局域网上个各机器的数据包加上一个包头记录机器的IP,而后转发到INTERNET上,受到的过程相似,
回复
相关推荐
发帖
VC/MFC
创建于2007-09-28

1.5w+

社区成员

VC/MFC相关问题讨论
申请成为版主
帖子事件
创建了帖子
2002-05-18 10:46
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……