V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
KyL
V2EX  ›  互联网

服务器如何区分同一路由器下的两台机器?

  •  
  •   KyL · 2015-12-12 12:51:22 +08:00 · 3415 次点击
    这是一个创建于 3271 天前的主题,其中的信息可能已经有所发展或是发生改变。

    比如我家的宽带分配的 IP 地址为 22.22.22.22 ,一个路由器上连接了两电脑,分配的地址为 192.168.0.10 和 192.168.0.20 。如果我访问一个网站,网站肯定会把数据发送到 22.22.22.22 ,那么路由器怎么分辨要把数据发往哪个电脑呢。

    如果路由器只是把收到的数据广播,那么如果两台电脑同时访问一个网站时该怎么分辨呢?

    16 条回复    2015-12-12 22:47:17 +08:00
    bingwenshi
        1
    bingwenshi  
       2015-12-12 12:55:25 +08:00
    yexm0
        2
    yexm0  
       2015-12-12 12:58:52 +08:00 via Android
    mac 地址是唯一的:-)
    bingwenshi
        3
    bingwenshi  
       2015-12-12 13:02:25 +08:00
    错了,这个问题的话,应该看交换机的 http://baike.baidu.com/view/116641.htm
    KyL
        4
    KyL  
    OP
       2015-12-12 13:03:33 +08:00
    @yexm0 但是目标服务器收到的请求中只有 IP ,没有源电脑的 MAC ,返回的响应里自然也只有 IP ,没有 MAC 啊。
    des
        5
    des  
       2015-12-12 13:04:29 +08:00   ❤️ 1
    powergx
        6
    powergx  
       2015-12-12 13:06:19 +08:00 via iPhone
    nat 转换 , port 对应内网 ip
    bingwenshi
        7
    bingwenshi  
       2015-12-12 13:10:45 +08:00
    @des 是的
    a302800411
        8
    a302800411  
       2015-12-12 13:23:14 +08:00
    楼主需要看一下计算机网络,你的计算机像服务器发送请求建立一条连接,当连接建立成功,路由器就已经分配信道了,不仅仅是你家的路由器,也包括运营商的路由器。可以想象成逻辑上已经建立了一条独立的车道
    jasontse
        9
    jasontse  
       2015-12-12 13:46:31 +08:00 via iPad
    远端服务器只管回复数据包给 2.2.2.2 ,至于发给内网哪台电脑是 NAT 网关(路由器)的事情,路由器通过匹配 NAT 五元组记录来确定应该发给哪台电脑。
    dalaomj
        10
    dalaomj  
       2015-12-12 13:52:51 +08:00
    其实路由器也没那么聪明。只有这种简单的单层网络结构应付自如。
    但只要网络结构稍微一复杂,数据包就不知往哪发了,极易产生“环路”问题。
    pH
        11
    pH  
       2015-12-12 14:35:57 +08:00
    @dalaomj SPT 就派上用场了这时候
    pH
        12
    pH  
       2015-12-12 14:36:38 +08:00
    @dalaomj 抱歉, STP ( Spanning Tree Protocol )
    imn1
        13
    imn1  
       2015-12-12 14:46:48 +08:00
    这事理应请教支付宝,他们是专家
    e1eph4nt
        14
    e1eph4nt  
       2015-12-12 17:14:52 +08:00
    google iptables, netfilter, snat, masquerade
    Tink
        15
    Tink  
       2015-12-12 17:17:02 +08:00 via iPhone
    nat
    SPACELAN
        16
    SPACELAN  
       2015-12-12 22:47:17 +08:00
    路由器通过端口来判断包是发给子网里哪个电脑的,具体的映射关系也是存在路由器里面的
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1156 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 23:01 · PVG 07:01 · LAX 15:01 · JFK 18:01
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.