服务器 频道

简易网络基础架构(4):基础网络布线模式

  【IT168 服务器学院】基础网络布线模式:
  
  
谈完了一些基本的观念之后,接着下来当然就是实作的部分啰!首先,要让网络能通,自然就需要将所有的计算机以『网络的联机媒体』连接起来,这里指的媒体就是『网络线、集线器或交换器( Hub 或 Switch )、网络卡』等等的硬件配备啦!当然啦,由于选择的媒体不同,布线情况也会有所差异!这里 VBird 以目前最常见于一般小型企业或家庭 LAN 里面的布线『星形联机』来进行说明。这种架构基本上就是以一个 Hub 或者是 Switch 为中心,进而将所有的计算机连接起来,以提供各个计算机的网络功能!这种架构的最大优点在于除错较容易!我们底下列出一个很简单的家庭星形架构的联机:
  

基本组件:
  
  · 工作站与服务器( workstation, server ):简单的来说,上面的 Windows PC1, Windows PC2, Linux PC3 这个没有对外开放网络服务的机器就可以称为 工作站( workstation ) 啦!而上面的 Linux之Proxy,NAT服务器由于对外提供网络服务,可以允许客户端 ( Client ) 连接上来,就称为 服务器( Server ) 啦!而 host 指的是一部计算机啦!不论是上面的 workstation 或 server 的哪一部,都是 host 说!
  
  · 节点:那么 node 是什么呢?就是节点啦,在网络媒体上面的每一个 host (主机) 都可以看做一个 node 啰!例如上面的图标当中, 集线器、 Linux 服务器、调制解调器、ISP大型主机.... 都是一个『节点』,因为我们的资料封包都是会经过该装置才一个一个的传送出去!
  
  基本架构说明:
  
  简单的说,『网络就是一群通过一定形式连接起来的计算机』!
  
  · LAN:一个网络可以由两台计算机组成,也可以拥有在同一大楼里面的上千台计算机和使用者。我们通常指这样的网络为局域网络 ( LAN、Local Area Network ),如同上面的图标,我们可以简单的认定在调制解调器以内( 即左边 )的 PC1, PC2, PC3, Linux 主机等设备即为 我们的 LAN 的部分了。因为我们最常使用的还是LAN,( 即使我们从家中连上 Internet,其实也是先连上 ISP 的 LAN ),所以这里我们主要讨论的还是以LAN为主。
  
  · WAN:由 LAN 再延伸出去更大的范围,比如整个城市甚至整个国家,这样的网络我们称为广域网 (WAN、Wide Area Network ),所以,简单的说,很多的这样的架构的 LAN 凑在一起,就称为广域网络啦!
  
  · Internet:就如同上面提到的,Internet 是将所有 WAN 与 LAN 连结起来的一个接口而已!由于没有专人维护,所以说, Internet 是一个最没有王法的地方了,你可以在 Internet 上面联机到任何地方去或进行任何事情!
  
  · Intranet:最早出现的名词是 Internet,然后人们将 Internet 的概念和技巧引入到内部的私人网络,可以是独立的一个 LAN 也可以是专属的 WAN ,于是就称为 Intranet 了。它们之间的最大分别是:开放性。Internet 是开放的,不属于任何人,只要能连接得到您就属于其中一员,也就能获得上面开放的资源。相对而言,Intranet 则是专属的、非开放的,它往往存在于于私有网络之上,只是其结构和服务方式和设计都参考 Internet 的模式而已。 所以,简单的说,我们那个小小的 LAN 也可以视作是一个小型的 Intranet 呢!
  
  · Extranet:Extranet 算得上是针对 Intranet 而延伸出来的概念。既然 Intranet 是指内网络部而言,那么 Extranet 则指外部的网络了。Extranet 通常是企业和 Internet 连接以向公共提供服务的网络。不过﹐这并非是单纯根据物理或逻辑位置来定义,主要是以连接的形式和功能来区分。例如某个外部网络,如果单纯的透过网络来连接我们的 Extranet 或 Intranet ,那它只是一个毫不相关的外部个体而已。但是,如果我们用 VPN 或其它信任形式将对方连接起来,那么对方也可以属于 Extranet 或 Internet 的部份。
  
  关于 Internet/Intranet/Extranet 的观念,我们再引用 ZMAN 兄的话:『举例来说,假设我的公司有台北台中高雄上海等分公司 ,将这些公司连在一起然后属于我公司内部使用的网络,就叫 INTRANET !我的观念是不一定非用INTERNET(VPN)连用X.25或FRAME RELAY或专线应该都算在内,重点在于属于我公司内部使用的网络服务的对象是公司内部员工,如果我的上游供货商或下游协力厂商甚至是客户需要进来我的INTRANET存取资料,联机的方式当然很多(拨接,专线,INTERNET) ,认证及安全性也很重要 ,这样子的网络我们叫它EXTRANET ,重点在于服务特定外部对象进来INTRANET ,而INTERNET的服务对象就是无限定的,譬如说你无法预估谁会来看你的网站或寄MAIL给你 』
  
  联机方向:
  
  那么现在来想一想,我们是怎样由内部的 Intranet 连上 Internet 的呢?!如同上面的图标一般,如果我们目前在 Linux PC3 这部工作站上面,那么我们的资料怎样经由网络传送出去呢?基本上,需要有这些步骤才行:
  
  1. Linux 核心必须有支持网络卡:
  
  由于 linux 系统本身就有相当强大的网络支持度,所以我们上面提到的 OSI 模式上面使用者功能的四层在这里都不成问题!接着下来我们应该要探讨的就是『硬件』部分了。还记得我们在 编译核心 的时候有提到,真正在进行工作的是什么吗?!没错!就是『硬件』!而要让硬件正确的工作时,就需要核心的支持啦!因此,在一个打包好的资料封包想要进行网络传输时,最重要的工作就是让你的核心支持网络卡啦!
   
  如果你的网络卡预设并没有被核心支持,那么就必须要编译网络卡的驱动程序,并且在 /etc/modules.conf 写入驱动程序的模块,这样才能在一开机的时候被驱动呢!好了!那么我们的操作系统怎么知道网络卡这个硬件呢?嘿嘿!这就需要所谓的 Media Access Control ( MAC ) 这个东西啦!基本上,每一块网络卡都有少有的自己的网络地址,那个东西跟我们常讲的 IP ( 软件地址 )不一样呢!那称为 Hareware Address (硬件地址),是由 六组16进位的数字组成的!例如我家里的网络卡地址为:『00:50:FC:22:9C:57』,这个硬件地址是在网络卡出厂的时候就已经被焊死在网络卡上面了!你没有办法修改的!这个东西在 Switch 及 DHCP 的时候很有用呢!你可以想象一下,这个东西就有点像是门牌号码啦!
   
  2. 网络卡必须具有合法的 IP ( 软件地址, software address ):
  
  再来,由于我们目前的网络基础是由 IP ( Internet Protocol )进行沟通的( 由于这个 IP 是经由操作系统的软件给的,所以又称为 软件地址( software address ) ,跟刚刚上面提到的硬件地址并不相同,请特别留意!),什么是 IP 呢?就是由四组 8 bits 的数字组成的,例如 tw.yahoo.com 的 IP 地址为:202.1.237.21,这就是所谓的 IP 啦!那么还有所谓的保留 IP (或称为私有 IP ) ,这个是原先在规划 IP 的规则的时候就先预留的 IP 啰!这些 IP 并不能直接跟外界之 Internet 进行沟通!最常使用的就是 192.168.0.1 ~ 192.168.0.255 这一个 C Class 的网段啰!好了!既然要沟通的话,那么自然就有所谓的 network 网段内啰(我们常提到的『同一个网段』的概念)!那个 192.168.0 就是 network ,由于是 C class 的关系,( 注意,其 netmask 为 255.255.255.0 ),而起始段为 192.168.0.0 到最末段为 192.168.0.255 ,而这个最后一个末段的 IP 就称为 broadcast !这四个东西: IP, network, broadcast, netmask 在规划一个网络卡的时候是相当重要的参数!千万不能设定错误呢!
   
  3. 资料封包打包送出( TCP ):
  
  好了,也有了 合法 IP 地址之后,那么我们的资料就已经可以定位了,这个时候,当你要将你的资料传出去的时候,你的资料就需要经过打包,所以我们就会称为是『资料封包』,那么这个传输你的资料封包的协议我们称为 Transmission Control Protocol ( TCP ) 啰!这个 TCP 的内容除了你的资料之外,最重要的就是纪录了这个资料的来源 IP 与端口口 ( source, port ) 还有目的地的 IP 与 埠口 ( destination, port ),这样我们的资料就可以去寻找 IP 给他丢出去啰!
   
  4. 经过节点、 Router 或 Gateway 主机:
  
  好了,由于我们是经由 Hub/Switch 进行连接的,所以我们的资料一定会经过这个节点才会传送出去!这个时候不禁要想一想, Hub 好还是 Switch 好?这两者有什么不同呢?其实最大的不同来自于『共享网络媒体』与『网络媒体对应』的架构上面!这点我们在后面会再提及。
   
  还有,当我们的 TCP 封包已经打包好了准备送出的时候,网络怎么知道如何传送这个资料封包呢?其实,就像我们去到陌生的国家需要有『地图』才能够『按图索骥』一般!在网络的世界里,必须要藉由 route table (路由表) 来取得 gateway 或 router 的地址,进而将资料传送到 router 上面去啦,其它的工作就是 router 那边的事情啰!而 router 接收了封包之后,就会再藉由 router 自己的 route table 来判断下一个该去的 router 主机~~一直重复这个动作,最后就可以到达目的地啦!( 请注意,如果两部互相传输的计算机是在同一个网域之内,由于同一个网域的主机均可以直接透过监听与沟通的动作来达到数据传输的目的,所以主机可以直接与主机相互沟通,而不需要 router 啰!当然你也可以想成你的主机就是你的 router 啦! ^_^ )
   
  5. 到达目的地:
  
  好了,藉由这么多的节点的传送,我们的资料封包由于 TCP 里头的目的地 IP 的规定,所以找到了正确的主机啰!这个时候这个主机就会将 TCP 封包解开,并且将资料读取出来!嘿嘿!完成传送啰!
  所以,基本上我们在传送一个资料的时候,他的机制是挺复杂的,不过也可以想得很简单!就是:
  
  1. 操作系统先依据软件给的 IP 来将资料打包成为待传送的封包,例如 TCP 封包,上面并记录了来源与目的的 IP 与 port;
  
  2. 根据封包上面的目的地 IP 资料,并经由 本机上面的 route table 来取得下一个 router 的信息( 若在同一网域内,则 router 可视为本机的网络卡 ),然后将资料送到 router 上面去;
  
  3. 重复 router 的行为,最后送到目的地端的 PC,而对方主机接收你的 TCP 封包!
  基本上就是这样,底下我们分别来谈一谈,那么上面这些基础步骤所需要注意的地方为何,其中最重要的就是 IP 的概念!这点请特别留意呢!

0
相关文章