《NetBSD指南-22.5.子网和路由》

NetBSD用户指南中文版、NetBSD pkgsrc指南中文版...

版主: lionux

主题已锁定
头像
leo
帖子: 2465
注册时间: 2010-01-21 3:27

《NetBSD指南-22.5.子网和路由》

帖子 leo » 2010-03-06 15:49

谈论了这么多子网掩码、网络地址、主机地址和其它地址, 我必须承认这还不全.
想象一下你们大学的情况, 通常有一个B类(/16)地址, 允许在这个网络有 216 ~= 65534 台主机. 也许将所有的主机设置在单一的网络内是一件好事, 但因为目前的输送介质的限制这是不可能的。
举例来说, 当使用一个细的以太网线时, 最长的网线长度是185米。 即使在网络中存在转发器可以刷新信号, 这也不能覆盖所有机器的所在位置. 此外, 一条以太网线路上最多能连接1024台主机, 而且在到达此极限时网络性能将大幅度下降。
那么, 你现在是否有凉水浇头的感觉? 你有一个可以使用60000多台主机的地址,但因为介质的限制能连接的主机数远远少于60000?
当然不可能! :-)
有个办法是将这个 “大” 的B类网分成几个小网络, 也就是通常说的子网. 我们假设这类子网最多仅允许有254台主机 (也就是你将一个大的B类网分割成几个C类网!).
要这样, 你要调整你的子网掩码,使其有更多的网络位更少的主机位. 这通常从一个字节的边界着手, 但你并非一定要从那里做. 因此, 通常你的子网掩码不会像B类网络那样设置为255.255.0.0, 而是被设置为255.255.255.0.
在CIDR表示法里, 你现在写一个 “/24” 而不是 “/16” ,这样表示用地址的24位来甄别网络和子网, 而不是我们前面用的16位.
这将提供给你另一个网络字节来分配每个(物理上的)网络. 所有那个子网内的主机现在可以直接通讯, 并且你可以组建256个这样的C类网. 这应该满足你的要求了.
要更好地理解, 我们继续讨论上例. 假设我们的主机132.199.15.99 (从现在开始我称其为 dusk ; 也就是我们后面讨论的分配的主机名) 有一个子网掩码255.255.255.0,因此在子网132.199.15.0/24上. 我们进一步介绍多台主机的情况,这样才有的搞, 参图 22.2. 我们的演示网络

图片


在上面的网络中, dusk 可直接与 dawn 通讯, 因此他们处于同一子网. (还有其它主机连接在132.199.15.0/24子网上,但目前它们对我们不重要)
但是 dusk 如何与其它子网内的主机通讯呢?
那么, 通讯要通过一个或多个子网上的网关(路由器). 因此, 一个路由器永远有两个不同的地址, 其中一个是提供给子网内的所有主机的。 路由器有透明功能, 也就是你不必告诉它你要和 “另一” 方通讯,你和另一方直接通讯,数据包会直接路由过去。

例如,我们假设 dusk 想从本地的ftp服务器上下载一些文件. 因为 dusk 无法直接接触 ftp 服务器(因为它在不同的子网上), 所有的数据包将被转发到其 "默认路由" rzi (132.199.15.1)上, 它知道往哪里转发这些数据包。

Dusk 知道它网络里默认路由的地址(rzi, 132.199.15.1), 而这个路由器将会将Dusk的所有数据包转发到另一个子网的主机上, 也就是默认路由会把所有的IP数据包发给第三个地址字节不是15的网段。

然后这个(默认)路由将数据包转发给合适的主机, 因为它也位于FTP服务器所在网络。
本例中, 所有 数据包被转发到 132.199.1.0/24-网络, 只因为它是这个网络的骨干, 这个网络里最重要的部分, 它负责跨子网的数据传输. 除了132.199.15.0/24,几乎所有的其他网络全以同样的方式连接在这个骨干上。
但是如果我们将另一个子网挂接到132.199.15.0/24而不是132.199.1.0/24会怎样呢? 也会这种情况可以在下图中可看到。

图 22.3. 将子网连接到另一个网络

图片

当dusk想与位于132.199.16.0/24-子网的一台主机联络时, 它并不把数据路由到 rzi, 而是必须把数据直接发送到 route2 (132.199.15.2). Dusk 必须知道将这些数据包转发给 route2 ,而将其它的数据包发送到 rzi。
配置 dusk时, 你告诉它将所有转发到132.199.16.0/24-子网的数据包发送到 route2, 而其它的发送到 rzi. 而不是默认地制定132.199.1.0/24, 132.199.2.0/24等等, 0.0.0.0 可用来设置默认路由。
回到 图 22.2, “我们的演示网络”, 有个类似的问题, 当 dawn 想向 noon数据包时, 本例中通过一根串口线连接到 dusk . 当看其IP地址时, noon 看起来连接在 132.199.15.0-子网上, 但不对, 实际上, dusk 作为一个网关, 而 dawn 将不得不将它的数据包发送给 dusk, 然后dusk将会把这些数据包转发给 noon . 这种让dusk 强迫接受发给(noon) 数据包的方式被称为 “proxy arp”.
同样,当其它子网上的主机想向 noon发送信息时, 他们不得不将数据包发送给 dusk (可能通过 rzi路由)。

主题已锁定

在线用户

正浏览此版面之用户: 没有注册用户 和 1 访客