網路筆記Internet note
文章推薦指數: 80 %
什麼是網際網路(Internet); 網路類型; 傳輸媒體; 網路傳輸設備; 網路整體架構; IPv4; IPv6; UDP; Routing; NAT; DHCP; DNS; 網路管理; 網路安全; 名詞整理; 網路資源 ...
網路
筆記Internetnote
本網頁以打造無障礙閱讀為目標,可以用任何瀏覽器來觀看本網頁
內容陸續增加中...
什麼是網際網路(Internet)
網路類型
傳輸媒體
網路傳輸設備
網路整體架構
IPv4
IPv6
UDP
Routing
NAT
DHCP
DNS
網路管理
網路安全
名詞整理
網路資源
什麼是網際網路(Internet)
網際網路指的是讓各種不同的網路連接起來,呈現出鬆散的階層式架構的網路聚合體(Meta-Network),或可說是網路的網路。
基本要素(nutsandbolts)
數以百萬的電腦主機與終端系統(hosts,end-systems)執行網路應用程式(networkapps)
通訊連結(communicationlinks)
fiber,copper,radio,satellite
transmissionrate=bandwidth*?
路由器(routers)往前傳送的封包(forwardpackets)
通訊協定(protocols)定義了控制與接收的資料格式
TCP,IP,HTTP,FTP,PPP
通訊的基礎建設促成了分散式的應用程式
web,email,games,e-commerce,database,voting,filesharing
通訊服務提供了應用程式
connectionless
connection-oriented
網際網路的推動組織與標準
網際網路的推動組織
網際網路架構委員會(InternetActivitiesBoard;IAB)負責提供整體網際網路的發展方向和訂定技術標準建議,其下有兩個重要單位為:網際網路工程工作小組(Internet
EngineeringTaskForce;IETF)和網際網路研究專門工作組(Internet
ResearchTaskForce;IRTF)。
IETF主要負責網際網路技術標準之制定,IRTF則主要負責努力於網際網路的未來方向之研究。
網際網路的標準
RFC(RequestForComments)是由IETF、IAB或是IRTF組織所制定,在網際網路上通用的協定之規範。
最早的RFC是由ARPANet與Internet
WorkingGroup所提出的,每一個WG(WorkingGroup)代表一個專案計劃,負責制定一群相關的建議書,現有的Internet網路大約包含了4000多個RFC。
雖然RFC稱之為建議書,表示並沒有強制接受的意思,但是事實上,在網際網路當中的RFC,與ITU所制定的通訊協定一樣,具有十分強大的約束能力,一般電腦硬體製造商與網路軟體開發業者,莫不遵從RFC所制定的規範來執行。
例如RFC
1157定義了簡易網路管理協定SNMP,RFC1213則制定了MIB-2的基礎格式。
網路類型
網路類型有不同的分類方式,如網路的規模大小,網路呈現的拓樸,或網路上節點的角色。
依網路規模分類
網路依規模大小(距離遠近)可分為:
區域網路(LocalAreaNetwork;LAN):2公里以內
有線:乙太網路(Ethernet)最常見,使用IEEE802.3的標準,目前朝超高速乙太網路(GigabitEthernet)發展
無線:
IEEE802.11(a/b/g/n):100公尺內,速率以54Mbps或108Mbps為主。
BlueTooth:10公尺內,速率以1Mbps為主。
WiMAX(IEEE802.16):長距離的無線寬頻存取,距離可達50公里,最大傳輸速率為75Mbps。
都會網路(MetropolitanAreaNetwork;MAN):使用IEEE802.6的標準,傳輸距離為2-100公里,常見的架構為非同步傳輸模式(Asynchronous
TransferMode;ATM)與分散佇列雙匯流排(DistributedQueueDualBus;DQDB)
非對稱數位用戶線路(AsymmetricDigital
SubscriberLine;ADSL):在現有的電話上加裝ATU-R(ADSL數據機),利用ADSL技術,用戶可在使用電話的同時以上下傳速率不對稱的方式使用網路(上傳速率:64k-1Mbps,下傳速率:
256k-12Mbps)。
廣域網路(WideAreaNetwork;WAN)
運作在實體層
T-Carrier(TrunkCarrier,主幹傳輸媒體):主要透過分時多工(TimeDivisionMultiplexing,
TDM)技術,每64Kbps為一個傳輸通道,常見的有T1(1.544Mbps)、E1(2.048Mbps)、T3(44.736Mbps)
SONET(SynchronousOpticalNETwork,同步光纖網路):將光纖速率劃分出數個等級,如OC-n(Optical
Carrier;光學媒體)
運作在實體層與資料鏈結層
FrameRelay:改良自X.25協定,因軟硬體品質提升,故省略了偵測與修正錯誤,提升效能不少,連線兩端需建立虛擬連線(Virtual
Connection),底層可使用T-Carrier或SONET。
ATM(AsynchronousTransferMode;非同步傳輸模式):因下列幾點特色,故相當引人注目
ATM交換器可減少路徑選擇動作。
ATM交換器可省略錯誤檢查和流量控制工作。
封包長度固定,只有53Bytes,5Bytes為Header,48Byte為Payload。
每個連線擁有專屬頻寬。
傳輸速率多樣化,可為不同類型的資料選擇不同的速率。
都會網路在台灣比較少人談,而區域網路和廣域網路的定義是相對的觀念,因為科技日新月異,定義的太清楚意義不大,就涵蓋的範圍而言,WAN>MAN>LAN。
。
依網路拓樸分類
拓樸指的是網路上各節點連接後的實體外貌,常見的模式如下:
匯流排型(BusTopology):以線段方式連接各點,訊號向二端傳遞,直到端末的終端電阻(Terminator)吸收為止,具廣播(Broadcast)特性,節
點故障不影響網路,但中間線路斷線則會造成整個網路癱瘓,網路使用量大時,會造成傳輸品質急遽惡化。
環型(RingTopology):各節點以環的形式相連接,不會發生資料碰撞情形,只有點對點傳輸功能,不具廣播特性,常見架構有權杖環網路(Tokey
RingNetwork)與光纖分散資料介面(FiberDistributedDataInterface)等。
星型(StarTopology):所有網路節點都與中心節點(可以是Hub或Server)相連接,屬於中樞控制(CentralizedControl)架構,節點與線路故障不會影響網路,但中心節點故障則會造成整個網路癱瘓。
樹型(TreeTopology):數個星型網路連接在一起,形成階層式的樹狀架構。
網型(MeshTopology):建置成本高,目的在提供更高的可靠度。
完全連結網路拓樸(FullConnectedMeshTopology)
部份連結網路拓樸(PartiallyConnectedMeshTopology)
依節點扮演的角色分類
所謂的角色,指的是網路上的節點是否提供資源分享,常見的模式如下:
集中式(Centralized):主機負責資源的提供,好處是管理容易,安全性高,壞處是主機負擔容易過重,造成瓶頸或停擺。
對等式(Peer-to-Peer):此架構可以動態彈性的定位角色,每台機器既是伺服端也是用戶端,對等端可彼此分享資源,沒有主要伺服器,適合規模小的組織建構,好處是獨立性高,可避免集中式所造成的瓶頸,壞處是維運管理工作分散,效率與安全不易維護。
主從式(Client-Server):節點依提供資源與否,分為伺服端(Server)和用戶端(Client),一個網路中可同時擁有許多伺服端,通常藉由目錄伺服器
(DirectoryServer)登錄哪些服務是由哪些伺服器所提供,如此可方便管理。
伺服端(Server):伺服端是相對於客戶端較好的電腦設備,通常有較快的處理能力和較大的儲存容量。
主要在提供服務給用戶端使用。
伺服器存放著網路作業系統(Network
OperatingSystem,NOS)的軟體。
用戶端(Client):用戶端是相對於伺服端次等級的設備,通常藉由連線存取伺服器端的資料、資源。
在客戶端則存放著客戶端軟體。
混合式(hybrid):結合主從式與對等式的架構。
傳輸媒體(Transmissionmedia)
網路節點間傳送訊息的媒體(TransmissionMedia),一般分為有線傳輸與無線傳輸(Wireless)兩大類
導向式媒體(guidedmedia):指的是實體的線材,例如,雙絞線,光纖,同軸電纜等,其線材其主要考慮的是以較低成本,提供較快的傳輸速率(光纖
>同軸電纜>雙絞線),並減少其傳輸衰竭(Attenuation)。
非導向式媒體(unguidedmedia):指的是非實體的線材,以電磁波透過天線(Antenna)發射,例如無線電波(RadioFrequency,
RF),雷射(Laser),紅外線(Infrared,IR),微波(Microwave),衛星(Satellite)等,在佈線困難或有移動性(Mobility)需求時使用之。
雙絞線(TwistedPairwires;TP)
為降低訊號衰竭的緣故,採對絞方式抵銷兩條電線上所產生的磁場效應,降低電生磁、磁生電之類的電磁干擾(ElectromagneticInterference)。
把UTP線切開,我們可以看到四對不同顏色的線,而且是成對的絞在一起,四對線的顏色分別為藍/白藍、橙/白橙、綠/白綠、,棕/白
棕,所謂白藍,
是指白底參雜少許藍色,其他顏色以此類推,一般而言橙/白橙,綠/白綠絞線次數每英吋約4次,藍/白藍,棕/白棕絞線次數每英吋約3次,因此橙/白橙,綠
/白綠有比較好的抗雜訊能力,因此網路壓線時,建議使用這兩對線。
雙絞線類型:
無遮蔽雙絞線(UnshieldedTwistedPair;UTP):由於外層無金屬遮蔽物,所以防干擾能力較差,但是價格與安裝上具優勢,因此受到廣泛採用,現在一般人提到雙絞線大多泛指無遮蔽式
雙絞線,使用RJ-45作為接頭,具有8個腳位(Position)與8個金屬接頭(Contact),俗稱8P8C。
遮蔽雙絞線(ShieldedTwistedPair;STP):以金屬遮蔽物包裹住雙絞線與一條接地用的細導線,多用於記號環網路架構。
(理
論上導體內部不會有電磁場)
目前的纜線標準有好幾種,其中以EIA/TIACategory最為廣泛,EIA/TIA訂義UTP纜線標準EIA/TIA-568,分為5種Category:
Category1:速率1~2Mbps,未絞線
Category2:速率4Mbps,用於語音
Category3:速率16Mbps,用於傳統電話線,10MbpsEthernet及4MbpsTokenRing,每英吋絞3次
Category4:速率20Mbps,用於10BaseT及16MbpsTokenRing
Category5:速率100Mbps,用於100MbpsEthernet,每英吋絞4次
Category5增強型:速率200~300Mbps,用於ATM網路(OC-3)
Category6:速率350~600Mbps,用於GigabitEthernet
Category7:速率600Mbps以上,用於10GigabitEthernet
EIA/TIA-568定義兩種接頭規格,EIA/TIA-568A及EIA/TIA-568B,EIA/TIA-568A已經淘汰,目前大多使用EIA/TIA-568B,它的腳位排列順序為橙白、橙、綠白、藍、藍白、綠、棕白、棕
10Base-T與100Base-T僅使用1、2與3、6兩對腳,集線器上的RJ-45插槽的腳位,則與網路卡定義相反即Pin1為RX+、Pin2為RX-、Pin3為TX+
、Pin6為TX-,於是在連接集線器與網路卡等裝置時,必須使用一對一纜線,如此傳輸端連接到接收端,才能符合通訊原則。
EIA/TIA-568B腳位
1.橙白
2.橙
3.綠白
4.藍
5.藍白
6.綠
7.棕白
8.棕
同軸電纜(CoaxialCable)
以中心銅蕊外加絕緣體,再覆蓋銅網阻絕外部電子訊號干擾,外層以塑膠外皮包裹銅網以防止摩擦並防潮,傳送距離較雙絞線遠,用於遠距離類比訊號傳輸時,需適時使用放大器(Amplifier),若使用長距離數位訊號傳輸時,需適時使用中繼器(Repeater)。
同軸電纜依特性阻抗分類
50歐姆:基頻(baseband)傳輸,常用於傳送數位訊號
75歐姆:寬頻(broadband)傳輸,常用於傳送類比訊號,也是有線電視(CommunityAntennaTV;CATV)的標準規格
同軸電纜依中心直徑分類
粗同軸電纜:中心直徑為10mm
RG-11:阻抗為50歐姆,單一線段長500公尺,每段最大節點數為100,訊號最遠可延長達2500公尺,常用於10Base5的乙太網路或長途電話。
RG-59:阻抗為75歐姆,常用於電視機。
細同軸電纜:中心直徑為0.18英吋
RG-58:阻抗為50歐姆,單一線段長185公尺,每段最大節點數為30,訊號最遠可延長達925公尺,單蕊,常用於10Base2的乙太網路,使用BNC接頭,T型接頭與終端電阻等接頭。
RG-58A/U:阻抗為50歐姆,多蕊,常用於10Base2的乙太網路。
光纖(OpticFiber)
光纖可避免傳統電線/纜的電磁干擾,傳輸速度快,安全性高,但架設不易,成本較高。
主要利用光線行進時遇到不同介質,就會產生折射或反射的原理傳送訊號。
光纖使用高純度的玻璃纖維的核心(Core),外層包裹折射率較小的塑膠物質(Cladding),最外層則使用不透光的保護層(Coating)覆蓋,避免外部光線干擾。
光纖依其光線在玻璃纖維核心所行進的方式可分為
多模光纖(MultiModeFiber,MMF):光線以類似波浪狀的方式傳送(光線會折射),又可分為
多模梯階指數光纖(Step-indexMultimodeFiber):核心密度固定,成本較低,但傳送距離短(2公里)且傳送速率低(140Mbps)。
多模平滑指數光纖(Graded-indexMultimodeFiber):核心密度中央最高且逐漸往外遞減,傳送距離長。
單模光纖(SingleModeFiber,SMF):光線不會折射,幾乎以直線傳送,傳送距離可達20~30公里以上,成本較高。
紅外線(Infrared,IR)
1993年由IrDA協會(InfraredDataAssociation)制定,有3種傳輸模式
直接式紅外線連接(Direct-BeamIR,DB/IR)
散射式紅外線連接(DiffuseIR,DF/IR)
全向性紅外線連接(OmnidirectionalIR,Omni/IR):利用一個散射式的紅外線基地台,連接直接式的Client端
缺點如下:
傳輸距離太短:1.5公尺以內
穿透率差
無線電(radio)
不局限特定方向,可利用大氣層作反射作用。
頻率愈高穿透力愈強,但傳送距離愈短。
頻率範圍窄,功率高,所以易遭其他電波干擾且容易洩密。
網路傳輸設備
數據機(Modem)
透過數據機的調變(Mdulation)與解調變(Demodulation),可透過電話線傳送數據資料。
網路卡(NetworkInterfaceCard,NIC)
每張網卡都有網路位址(MAC),共有6Bytes,前3個Bytes為廠商代號,後3個Bytes為廠商流水號。
電腦的網卡位址可透過ipconfig/all指令得知
中繼器(Repeater)
中繼器又稱為訊號放大器,可將訊號恢復原有的波型與強度,再轉送出去。
中繼器會擴大碰撞領域,因為沒有阻擋特定訊號的功能,甚至於碰撞擁塞訊號(CollisionJamSignal)也原封不動的轉送出去。
屬於OSI模型中實體層的設備。
集線器(Hub)
集線器通常有中繼器加強訊號的功能,故又稱為多Port中繼器,多用來集中連接線材做控管之用。
集線器並沒有紀錄每個Port的連接設備位址,且所收到的資料都會廣播到所有的Port,同一時間只能有一對Port傳輸資料,否則會產生碰撞,造成效率差,影響多工的進行。
屬於OSI模型中實體層的設備。
橋接器(Bridge)
橋接器具有分割碰撞領域的功能,可將傳輸負載重的網路做切割,避免訊號廣播到所有節點,影響整體效率。
橋接器有記憶體存放對應表,可判斷訊號是否該傳送到另一端的網路,此項對應的工作是由軟體進行,容易造成瓶頸。
廣播封包可通過橋接器。
(留意訊號採廣播方式傳送與訊號為廣播封包的不同)
屬於OSI模型中資料鏈結層的設備。
交換器(Switch)
交換器同時具有集線器與橋接器的功能,故又稱之為多埠橋接器(Multi-portBridge),且橋接功能是以硬體進行,速度較橋接器快。
交換器會記憶每一個Port連接的網路設備位址,因此可發揮全雙工傳輸的威力。
較高階的交換器可設定虛擬區域網路(VirtualLocalAreaNetwork,VLAN),以完全隔離流量或隔離廣播封包。
一般稱的交換器,若沒有特別說明,通常指的是第2層交換器,屬於OSI模型中資料鏈結層的設備。
路由器(Router)
路由器最主要的功能在於提供可路由(Routable)協定之封包的尋徑之用,並且隔離區域網路上的不可路由(Nonroutable)協定之封包,通常做為區域網路與廣域網路之間的橋樑。
路由工作由軟體執行,還可支援多種協定,串聯不同的網路系統,優先權(QualityofService,QoS)控制,安全管理,與WAN連接等
屬於OSI模型中網路層的設備。
第3層交換器(Layer3Switch)
第3層交換器除了原有第2層交換器的功能之外,還能執行路由工作。
第3層交換器將路由工作改由硬體來執行,所以路由速度較路由器快,成本也較低廉,常與真正的路由器搭配使用在不需要連接網際網路的環境中。
屬於OSI模型中網路層的設備。
閘道器(Gateway)
具有比路由器更強的系統轉換能力,例如ProxyServer可用做應用層閘道器(ApplicationLevelGateway)。
屬於OSI模型中網路層以上的設備。
OSI參考模型
國際標準組織(ISO,InternationalOrganizationforStandardization)於1984年發表了OSI7層模型,學習OSI
7層架構的目的在於將它當作一把尺,可用來丈量所有網路上使用的協定。
實體層(PhysicalLayer)
資料鏈結層(DataLinkLayer)
網路層(NetworkLayer)
傳輸層(TransportLayer)
會議層(SessionLayer)
表達層(PresentationLayer)
應用層(ApplicationLayer)
實體層(PhysicalLayer)
傳輸媒體(Media):考慮衰減少,變形少,傳輸資料量大,成本低
導向式媒體(guidedmedia):指的是實體的線材
非導向式媒體(unguidedmedia):指的是非實體的線材
訊號編碼(SignalCoding):定義訊號的表現方式與訊號承載資料的方式
基頻編碼:直接控制訊號狀態
寬頻調變;藉由改變載波(Carrier)的振幅,頻率,相位等三種物理特性來傳遞資料
資料鏈結層(DataLinkLayer)
媒體存取控制子層(MediaAccessControl,MAC)
定址:藉由網路位址(MAC)
框架化:即上下層的資料封裝(Encapsulation)動作
媒體存取方式:載波偵測多重存取與碰撞檢查(CSMA/CD)
邏輯連結控制子層(LogicalLinkControl,LLC)
流量控制:避免處理速度趕不上傳送速度,必須進行同步化(Synchronization)
錯誤修正:常用CRC,若無法驗證則捨棄
網路層(NetworkLayer)
當資料從一個網路媒體傳送到另一種網路媒體時,網路層會依據不同的媒體差異,進行資料的分割(Fragmentation)與重組(Reassembly)動作
定址:IP,SubnetMask
尋徑:根據路由演算法(RortingAlgorithm)進行路徑的尋找
傳輸層(TransportLayer)
編定序號
控制資料流量
偵測與錯誤處理
會議層(SessionLayer)建立連結維護連結(同步,Keepalive)資料交換管理(單雙工)表達層(PresentationLayer)
內碼轉換
壓縮與解壓縮
加密與解密
應用層(ApplicationLayer)應用程式
網路整體架構
從網路的整體架構來觀察,有下列幾種組成
網路邊緣(networkedge)
網路核心(networkcore)
存取網路實體媒界(accessnetworks,physicalmedia)
網路邊緣(networkedge)
類型
endsystems(hosts):應用程式與主機,例如:Web,Email
client/servermodel:例如:webbrowser/server;emailclient/server
peer-peermodel:例如:Guntella,KaZaA
服務
TCP(TransmissionControlProtocol)和UDP(UserDatagramProtocol)都是屬於OSI
模式七層結構中的傳輸層(Transportlayer),傳輸層是負責提供兩個通訊軟體之間以約定的通訊品質(levelofreliability)
來傳送資料,也就是提供end-to-end的服務。
連結導向(connection-oriented)的通訊協定:TCP(TransmissionControlProtocol)
RFC793
reliable,in-orderbyte-streamdatatransfer
stream-oriented
提供連續的資料(stream)給通訊軟體
full-duplex
stream是雙向的(bi-direction)
connection-oriented
在兩個通訊實體(client及server)間開始傳送資料前,專一的(邏輯)通訊管道(聯結)必須先建立.
application-layeraddressing
雙方通訊軟體要能定址到對方
in-sequencedelivery
自動重送沒有到達的資料分段,自動刪除重複的資料分段,保證接收到的資料按照正確的順序排列
user-dataintegrity
驗證收到的資料,保證資料在傳輸過程物沒有損壞
gracefulrelease
保證存在buffer中的資料在被刪除前,都已經成功的傳送完畢
流量控制(flowcontrol)
使發送者傳輸資料的速度低於接收者接收資料的速度
擁塞控制(congestioncontrol)
senders"slowdownsendingrate"whennetworkcongested
應用
HTTP(web),FTP(filetransfer),Telnet(remotelogin),SMTP(email)
無連結傳送(connectionless)的通訊協定:UDP(UserDatagramProtocol)
RFC768
unreliabledatatransfer
datagram-oriented
資料被封包成一個個的packet(datagram),在網路上傳輸時,每個datagram被視為彼此獨立
connectionless
在兩個通訊實體間,並沒有一專一的邏輯管道,所有要傳送的資料可透過不同的邏輯管道傳輸,可能會有datagram遺失﹑延遲﹑重複﹑或順序錯誤等問題。
application-layeraddressing
雙方通訊軟體要能定址到對方
user-dataintegrity
驗證收到的資料,保證資料在傳輸過程物沒有損壞
無流量控制,無擁塞控制,無專用通道
應用
streamingmedia,teleconferencing,DNS,internettelephone
網路核心(networkcore)
類型
路由器
網際網路本身
資料的傳送方式
線路交換(CircuitSwitching)
連線時資源專屬(dedicated),故效率與頻寬保證
技術上是以電路方式進行傳輸,系統保留一條點對點傳輸的頻寬,以64Kbps速率傳送語音,當電話接通,這段頻寬便完全佔線,直到兩端通完電話為止,這樣的技術是以全雙工(full
duplex)的傳輸方式,也稱為connectionoriented。
連結頻寬有二種方式分配
分頻多工(FDM;FrequencyDivisionMultiplexing)
多個使用者在相同時間使用不同的頻寬來傳送訊息
分時多工(TDM;TimeDivisionMultiplexing)
多個使用者在不同時間使用相同的頻寬來傳送訊號
在相鄰時槽間加上一小段的保護時間(GuardTime),可防止相鄰時槽間訊號傳輸的干擾
封包交換(Packetswitching)
連線時資源共享(Shared),簡單,無須做連線前建立的動作
資料在傳遞之前,先將要傳送的資料切割為數個大小相等的區塊(MessageSegmenting),加上某些檔頭資訊之後,透過不特定的路徑(path
selection)在網路中傳遞。
存儲轉發(Store-and-Forward)的特性:存儲轉發是一個動態分配線路的方式。
它不事先建立線路,當發送端有資料要傳送時,先交給交換設備儲存
起來,等待適當的時機,交換設備再選擇一條合適的空閒輸出線將訊息轉發出去。
統計式多工(StatisticalMultiplexing)的特性
分封交換技術依其轉發(forwarding)的方式不同,又可以分為以下兩類:
虛擬線路(VirtualCircuit)
訊息在傳送前先建立一條邏輯的虛擬線路,由路由器負責維護每一連線的狀態,在關閉連接時撤消。
兩主機之間一旦建立起虛擬線路,封包即可遵循既定的交換設備
路徑進行傳輸,不必給出明顯的接收端位址,不必為各封包單獨尋找路徑,封包便會有次序地到達目的地,並不需進行重組。
但虛擬線路在內部需具備輸出入緩衝等
機制來支持其運作及可靠性。
目前絕大多數的電腦網路是採用此模式來進行資料的傳輸,如X.25、訊框傳送(FrameRelay)、非同步傳輸模式(ATM)等皆是。
VirtualCircuit提供應用程式的服務一定是Connect-Oriented的
資料報(Datagram)
此類模式沒有建立連接的過程,而所傳輸的封包稱為資料報。
每個資料報均攜帶接收端位址,傳輸時各自單獨尋找路徑,並不需要內部機制來支援。
Datagram可提供應用程式Connectionless(UDP)與Connect-Oriented(TCP)二種服務
線路交換與封包交換的比較
封包交換可承受更多人使用網路,大約是35:10
封包交換的頻寬資源共享
封包交換在網路擁擠時會造成封包遺失,故在通訊協定上需要可信賴的資料傳輸與流量壅塞控制的機制
封包交換為何提供類似線路交換的動作
對聲音或影像等應用程式需做頻寬保證
仍有未能解決的問題
存取網路與實體媒介(accessnetworks,physicalmedia)
存取網路的類型(endsystemtoedgerouter?)
家用網路
機構用網路
行動網路
家用網路:點對點傳輸(pointtopointaccess)
撥接式數據機(Dial-upviamodem)
使用傳統電話線路,最高不能超過56K,電話與上網不能同時。
非對稱數位回路(ADSL;asymmetricdigitalsubscriberloop)
使用傳統電話線路,上傳最高可達1Mbps,下傳最高可達8Mbps
CableModem
光纖同軸混合有線電視網路(HFC;HybridFiberCoaxial)
非對稱:上傳最高可達10Mbps,下傳最高可達1Mbps
機構用網路:區域網路(localareanetworks)
乙太網路(Ethernet):10Mbs,100Mbps,GigabitEthernet
線材可能使用雙絞線或同軸電纜
無線網路(Wirelessaccessnetworks)
無線區域網路(wirelessLANs)
通訊協定是IEEE802.11b也稱為wirelessEthernet或Wi-Fi
IEEE802.11b提供了11Mbps的頻寬分享
存取需要基地台(basestation)又稱無線網路存取點(wirelessaccesspoint)
廣域無線存取(wider-areawirelessaccess)
廣域無線存取的基地台一般由通訊業者提供服務
相關的標準
WAP(wirelessaccessprotocol)
GPRS(GeneralPacketRadioService)
i-Mode
網際網路架構與服務提供者(InternetstructureandISPs)
網際網路架構:網路的網路(Internetstructure:networkofnetworks)
IPv4
ip共32個bit,分成NetID與HostID。
NetworkMask即所謂的網路遮罩。
網路遮罩的最主要用途在於子網路(Subnetwork)的切割,並使電腦在彼此建立通訊管道之前,可先行判斷通訊對象是否可
直接連通(DirectlyReachable),再決定是否須轉送服務。
ip+NetMask配合決定網段。
每個網段的最前面ip作為網段辨識用,最後面的ip作為網段廣播用。
傳統網段的切割方式以8bit為切割,因此只有A-C網段。
因傳統網段的切割方式會造成ip浪費,故發展以HostID給NetID以增加NetMask的方法稱為CIDR或SubNet。
區域網路中,超過一個子網路存在時,即需使用通訊閘道(Gateway)加以區隔。
Gateway即所謂的通訊閘道(orrouter,accordingtoOSIDefinition)。
通訊閘道一般用於區隔不同的子網路,其主要功能有:
阻擋同一子網路間之封包向外傳送(Filtering)。
轉送須跨越不同子網路間之網路封包(Redirecting)。
網路路徑之偵測及選擇(Routing)。
路徑選擇(Routing)可分為靜態路由(StaticRouting)及動態路由(DynamicRouting)兩種,一般單一網路卡之電腦設備,採靜態路由者居多。
ipchecksum的計算
首先,讓我們看看IP封包的格式是怎樣的,和其組成部份,以及各部份的長度如何:
Version
(4)
Internet
HeaderLength(4)
Type
ofService(8)
Total
Length(16)
Identification
(16)
Flags
(3)
Fragment
Offset(13)
Time
ToLive(8)
Protocol
(8)
Header
checksum(16)
SourceAddress
(32)
Destination
Address(32)
Options(Variable)
Padding(0-24)
Data
....
有一ip封包檔頭資料為
45//IPversion(IPv4)
00//DifferentiatedServicesCodePoint(ihavenoidea
whatthisoctetisfor)
0028//TotalLength(ofthepacket?)
c538//ID(notreallysurewhatthisoctet'sfor)
4000//Fragmentationoffset
67//TimeToLive(innetworkhops)
06//Protocol(TCP)
a1a1//IPHeaderChecksum(two'scompliment)
d5361483//SourceIP
3dda8562//DestinationIP
將上述資料以2byte為一組(16bits)予以加總
4500+0028+c538+4000+6706+0000+d536+1483+3dda+
8562
=35e5b
進位的LSB必須再加回來
3+5e5b=5e5e
對結果求補數,即為checksum值
~5e5e=a1a1
IPv6
隨著全球網際網路的快速成長與使用人口不斷的增加,網際網路正遭逢了兩個嚴重的問題。
第一個問題是可用的網際網路位址(IPaddress)
終將不敷使用。
因為原來的網路位址設計方法並不能提供給所有的全球網際網路使用者足夠的定址空間,特別是B
類的網路位址並無法涵蓋所有網際網路上的中型網路。
第二個問題是全球網際網路中路由器裡的繞路表將變得十分龐大,這會使得路由器間交換資訊時的運算資源增
加及維護繞路資訊的成本大幅提昇。
為了解決這些問題,Y.Rekhter提出了ClasslessInter-DomainRouting(CIDR)
和ClassfulRouting的短期解決方案,另外R.Hinden與S.Deering提出了IPVersion6Addressing
Architecture的長期解決方案。
IPVersion6AddressingArchitecture(定址架構)
簡介
IPv6協定的定址架構包括了不同的基本定址格式(unicast、anycast、multicast)。
IPv6定址
IPv6是一個長度為128位元的識別名稱,其對應到一個或一組介面,其位址型態有以下三種:
unicasst:是一個單一介面的識別,傳送到一個unicast位址的封包是被送到這個位址所識別的介面。
anycast:是一組介面的識別(通常屬於不同的node),傳送到一個anycast位址的封包是被送到這個位址所識別的最近介面。
(由路由協定來決定其距離)。
multicast:是一組介面的識別(通常屬於不同的node),傳送到一個multicast的位址的封包是被送到這個位址所示別的所有介面。
IPv6中以multicast 取代了broadcast。
UDP
udpchecksum的計算
提示:
1.UDP的PseudoHeader會用到IP封包中的SorurceAddress,DestinationAddress,與Protocol。
2.UDPLength會在PseudoHeader與UDPHeader中各出現1次,也就是說會被計算2次。
3.若Data的長度若非Word(2Bytes)的倍數,則必須在最後面補一個byte的padding「0」。
假設有一封包資料如下
//-------BEGINEthernetHEADER----------------------------
00095b4f6472//DestinationHWaddress
000795e7792d//SrcHWaddress
0800//Type(notreallysurewhatthisoctet'sfor)
//-------BEGINIPHEADER----------------------------
45//IPversion(IPv4)
00//DifferentiatedServicesCodePoint(ihavenoidea
whatthisoctetisfor)
0038//TotalLength(ofthepacket?)
5d02//ID(notreallysurewhatthisoctet'sfor)
0000//Fragmentationoffset
80//TimeToLive(innetworkhops)
11//Protocol(UDP)
33d6//IPHeaderChecksum
c0a80002//SourceIP
c0f6283c//DestinationIP
//-------BEGINUDPHEADER---------------------------
6d38//SourcePort
6d2e//DestinationPort
0024//Length(oftheUDPPacket?)
29b5//UDPChecksum
ffffffff//Marker(partofthepacketdata,noidea
whatit'sfor)
676574736572766572732038322066756c6c20656d707479//
PacketData
將上述資料以2byte為一組(16bits)予以加總(PseudoHeader,UDPHeader,UDPData)
c0a8+0002+c0f6+283c+//SourceIP,
DestIP
0011+//Protocol
0024+//UDPlength
6d38+6d2e+//SourcePort,DestPort
0024+//UDPlength
0000+//emptychecksum
ffff+ffff+6765+7473+6572+7665+7273+2038+3220+6675+6c6c+
2065+6d70+7479//Data
=8d642
進位的LSB必須再加回來
8+d642=d64a
對結果求補數,即為checksum值
~d64a=29b5
Routing(路由)
IP路由的依據主要是看目的位址,如果目的地位址屬於處理封包之設備目前所在的網路範圍之內(與遮罩作and),那麼就直接從ARP表格中尋找目的地位址的
IP所對應的實體位址,如果沒有的話就用ARP協定來查詢。
但如果目的位址在其他網路的話,那麼就在ARP表格中尋找路由器的實體位址,如果沒有則用
ARP協定來查詢。
傳送的封包其 IPAddress永遠不變,但MACAddress 卻隨著所經的實體網路而有所不同。
不管封包經過多少個網路,在傳輸中歸根究底要靠實體網路達成,而實體網路的傳送依據
是實體位址,只要ARP能夠找出路由器的實體位址,就能順利將封包傳給它。
在每一台機器上面,都必需存在一份各自獨立的路由表格(RoutingTable),記錄著本機的路由資訊。
在Linux主機上面可用route或
netstat-r這2個命令來查看當前的路由狀況。
Router(路由器):轉送網路封包的網路設備,僅對封包進行將來源MAC位址更換為自己(Router)的MAC位址的變更。
RoutingTable(路由表):Router決定由哪一網路介面轉送封包時的查詢表格,而建立路由表有二種方式
靜態(Static):由網管人員手動加入路由規則。
動態(Dynamic):由路由器之間透過路由協定自動更新。
RoutingProtocol(路由協定):定義了Router與Router之間如何交換Route資訊。
AS(AutonomousSystem,自主系統):以區域為單位切割而成的較小系統,同一個AS跑的是相同的RoutingProtocol。
ASBR(AutonomousSystemBoundaryRouter):連接不同AS的中介Router。
IGP(InteriorGatewayProtocol):AS內部跑的RoutingProtocol,常見的有RIP,OSPF,IGRP。
RIP(RoutingInformationProtocol):
採用距離向量(DistanceVector)的演算法,而所謂的距離指的是Router經過的個數(Hop)為單位,由於不以實際的連線速率選擇路徑,因此可能造成效率低落。
RIP是一UDP-based的Protocol,使用port編號590。
允許傳輸的距離不得超過15個。
每30秒做一次Routing資訊廣播。
遇有網路不通的情況,會有收斂過慢的問題,故最好搭配SplitHorizon解決此問題(發出TriggeredUpdate的RIP
Packet)。
OSPF(OpenShortestPathFirst)
Router儲存所屬AS的RoutingTopologydatabase(LinkStateDatabase),且依據Routing
traffic,週期性的異動ShortestPathTree。
採用Dijkstra'sAlgorithm,以Cost來定義最佳路徑,以Metric(Metric=108/
每秒傳輸頻寬)來衡量,頻寬愈大的線路其Metric愈小,可視為距離愈近。
Router藉由散播HelloPacket(LSAPacket),可得到鄰近Router的LinkState資訊。
OSPF採用階層式架構以避免不必要的LSAPacket散播。
EGP(ExteriorGatewayProtocol):連接不同AS的RoutingProtocol,常見的有BorderGateway
Protocol(BGP)。
BGP(BorderGatewayProtocol,邊界閘道通訊協定)
BGP用於在AS間傳播Routing資訊,以建構AS的拓樸圖。
BGP是一TCP-based的Protocol,使用port編號179。
GNUZebra:一套以TCP/IP為基礎來管理RoutingProtocol的免費軟體。
NAT(NetworkAddressTranslation)
NAT會針對IP封包的來源端IP、目的地IP、來源Port、目的Port、checksum做改寫的動作,但並沒有針對IP封包的Payload內容做改變,因此若於NAT內部架設Server或UDP
Based的應用程式則需設定Port轉送(PortForward)或ApplicationLevelGateway的機制。
NAT分為三類,先定義m:原來的IP(PrivateIP),n:轉換後的IP(PublicIP)
StaticNAT:m=n時
DynamicNAT:m>=n時,因為透過NAT從動態表格中取得尚未分配出去的IP位址,因此每次與外部連通的IP可能都不一樣,形成一種天然的防火牆。
IPMasquerading(NAPT,IP偽裝):n=1時,但並不是只有一部電腦可以連通外界網路,而是配合TCPports的數量來決定
NAT的應用
VirtualServers(LoadBalancing):指外部連接本地端伺服器時,利用NATServer做平衡負載,後端連結多部真正處理的Server,若結合DNS更可達成所謂的Multi-homing的運作機制。
多線廣域網路負載平衡:內部網路連外時,透過NATServer選擇適當的ISP線路傳送封包。
NAT的問題
在NAT後端的FTPClient連線(若是FTPServer在NAT後端就更複雜了)
參考網址
http://linux.vbird.org/linux_server/0320nat.php
http://linux.vbird.org/linux_server/0400wuftp.php#theory_three_port
DHCP(DynamicHostConfigurationProtocol)
Client可藉由網路的廣播位址向DHCPServer取得可用的IPAddress、NetworkMask、DefaultGateway、DNS等訊息
,因此DHCPServer必須與Client處於相同的BroadcastDomain。
DHCP的流程
Discover
Client端電腦在開機的時候、第一次設定為DHCPClient的時候、重新啟動網路卡的時候、或者是重新更新租約(IPRenewal)的時候(Linux為12小時、WinServer
2003為8天),會自動的發出DHCP 的尋找訊息(UDPport67)給網域內的每部電腦,該訊息除了網路卡的硬體位址(Source
MACAddress)與電腦名稱無須改變直接送出外,還需要將該訊息的SourceIP設定為0.0.0.0,而Destination
IP則設定為255.255.255.255,DestinationMACAddress設定為FF:FF:FF:FF:FF:FF。
這個時候,網域內的其他沒有提供
DHCP服務的電腦,收到這個封包之後會自動的將該封包丟棄而不回應。
Offer
DHCP主機(本身要有靜態IP)收到這個Client的DHCP需求時,首先會針對該次需求的訊息所攜帶的MACaddress與本身資料庫的領域(scope)設定值去比對,如果有針對該
MAC做靜態(static)IP(每次都給予一個固定的IP)的提供時,則提供Client端相關的固定IP與相關的網路參數訊息(IP
Address、NetworkMask、DefaultGateway、DNS)(UDPport68);而如果該訊息的MAC並不在設定之內時,則會選取目前網域內沒有使用的
IP(這個IP與設定值有關)來發放給client端使用!(發放給Client端的訊息當中,會附帶一個IPAddressLease
Time『租約期限』的選項),而此回應訊息的DestinationIP為255.255.255.255(因為Client端尚未取得IP
),DestinationMACAddress為FF:FF:FF:FF:FF:FF(因為Client端尚未取得IP,故ARP封包中缺乏IP與MAC的對應
)。
若Client端未在30~60秒收到DHCPOffer訊息,則作業系統可採取APIPA(AutomaticPrivateIPAddress;
自動私有位址)的機制(APIPA藉由發送arp,詢問在169.254.0.0-169.254.255.255中隨機的一個位址來找到一
個可以用的IP。
如果沒有收到就是可以用,接著就會把網路介面指定這個IP)(InternetAssignedNumbersAuthority
(IANA)已經保留169.254.0.0到169.254.255.255的位址,做為「自動私有IP位址」。
因此,APIPA
所提供的位址,保證不會與可路由傳送的位址發生衝突。
),隨機選定IP賦予Client端,來確保在沒有DHCPServer存在時也能與區域網路上的其他電腦互相溝通,但
Client端仍會每3分鐘發一次DHCPDiscover廣播訊息。
Request
若有多台DHCPServer發送提供的訊息,預設會接受最先收到的DHCPOffer封包,當Client端接受了提供的訊息之後,首先會以
ARP封包在網域內發出訊息,以確定來自DHCP主機發放的IP並沒有被佔用!如果該IP已經被佔用了,那麼Client對於這次的
DHCP資訊將不接受(DHCPDecline),而將再次向網域內發出DHCP的尋找廣播(DHCPDiscover);若該IP沒有被佔用,則
Client端會以廣播的方式送出DHCPRequest封包(UDPport67),除了向選定的DHCP主機申請租用之外,也讓其它DHCP
主機知道,不需保留所提供的IP了。
(此訊息的檔頭與Discover一樣)。
ACK
若DHCPServer允許了DHCPClient的請求,會將該資訊記錄下來並發出確定(DHCPAck)的封包(UDPport68)(此訊息的檔頭與Offer一樣),client
端將DHCP主機所給的網路的參數寫入client端的網路設定當中。
若DHCPServer不能同意請求,則會發出DHCPNack封包,
Client端收到後,便重新執行整個流程。
更新租約
依據RFC2131規定,當租用時間超過租約期限的50%(1/2)及87.5%(7/8),Client端必須發出DHCPRequest封包(Unicast發送),向DHCP
Server要求重新更新租約(ipconfig/renew)。
撤銷租約
Client端重新啟動,關機時均會送出DHCPRelease封包撤銷租約(ipconfig/release)。
參考網址:http://linux.vbird.org/linux_server/0340dhcp.php
DNS(DomainNameSystem)
DNS的主要功能:將電腦主機的名稱轉譯成IP。
DNS利用類似樹狀目錄的型態,將主機名稱的管理分配在不同層級的DNS主機當中,經由分層管理,所以每一部主機的記憶的資訊就不會很多,而且異動上面也相當的容易修改,
也就是說每一部DNS主機都『僅管理下一層DNS主機的名稱轉譯』而已,這也是為何名稱是System而非Server的原因。
Domain(網域)
Domain可分2大類:
正解網域(forwarddomain)
國家網域(ccTLD,Country-codeTop-LevelDomain)
分類網域(gTLD,genericTop-LevelDomain)
反解網域(reversedomain)又稱為In-AddrArpa網域
PublicZone:提供DNS反查之用
SpecialZone
PrivateZone
最上層的domainserver稱為Root
FQDN(FullyQualifiedDomainName,完整領域名稱):在名稱的最後要加上一個點「.」
DNS的查詢
以UDPPacket格式(port53)傳送DNSQuery給NameServer
DNS查詢有2種
正查:由DomainName查詢IPAddress
反查:由IPAddress查詢DomainName(利用In-AddrArpa網域)
DNS查詢的步驟
Resolver查詢本身的Cache,若有結果則回應給呼叫的AP。
Resolver的Cache無資料則轉而向PrimaryDNS與SecondaryDNS查資料。
DNS查詢本身的Cache,若有結果則回應給呼叫的Resolver。
DNS的Cache無資料則視DNSQuery的形式來繼續接下來的查詢
RecursiveQuery:繼續向上層授權伺服器(Authorize)查詢,在查到結果後將結果回應給呼叫的Resolver。
IterativeQuery:回傳一串DNSServer的名單給呼叫的Resolver(或DNS),由Resolver(或DNS)自己再向名單中的DNS
Server查詢。
只有在直接被Resolver查詢的DNSServer才會支援Recursive查詢,也才會儲存查詢位址的Cache,諸如RootServer與較頂層的Server
僅提供Iterative的查詢。
一般ISP給予用戶的DNSServer大都提供Recursive查詢,以減少Client查詢的負擔。
DNS的應用
可應用DNS來做負載平衡(LoadBalanced)。
提供動態網域名稱(DDNS,DynamicDNS)。
參考網址:http://linux.vbird.org/linux_server/0350dns.php
網路管理
1989年發表的ISO7498.4將網路管理規劃為5個項目
組態管理(ConfigurationManagement):網路裝置的組態參數等。
故障管理(FaultManagement):1.排定優先順序2.收集資訊3.設想可能原因4.排除問題5.測試結果
效能管理(PerformanceManagement):1.回應時間(ResponseTime)2.正確率(Accuracy)3.流量(
Throughput)4.使用率(Utilization)
安全管理(SecurityManagement):1.帳號與權限控管2.稽核(Auditing)
帳務管理(AccountingManagement):1.資產管理(AssetManagement)2.成本控制(CostControl)
3.使用計費(Charge-back)
網路管理相關的通訊協定
SNMP(SimpleNetowrkManagementProtocol)簡易網路管理協定,目前有v1,v2,v3版本
RMON(RemoteNetworkMonitoring)遠端監視
網路管理的元件
管理程式(SNMPManager):網管人員的SNMP網管程式
代理程式(SNMPAgent):受管理的網路設備的SNMP代理程式
網路管理通訊協定(NetworkManagementProtocol):目前有SNMP,RMON
管理訊息資料庫(ManagementInformationBase,MIB):受管理的網路設備上的監控狀態資料庫
SNMP之所以稱之為簡單(Simple),是因為SNMPv1只用了5道指令,所有的SNMP作業全部都是在UserDatagramProtocol
(UDP)上面進行。
SNMP管理程式送出Reguest至代理程式的UDP161埠,SNMP代理程式則利用UDP161埠Response給SNMP管理程式,另外利用UDP
162埠送出SNMPTrap。
(SNMP無法穿越NAT)
GetRequest
GetNextRequest
GetResponse
SetRequest
Trap(警示)
SNMP的運作
在網管人員的電腦中安裝SNMP管理程式,如CA-UniCenter,HP-OpenView,SolarWinds,...。
由SNMP管理程式以輪循(Polling)的方式詢問SNMP代理程式其MIB中的狀態資料。
SNMP代理程式負責接收SNMP管理程式的指令,並回報網路設備現有的狀況,當發生網路設備異常時,會主動發出Trap訊息告知SNMP管理程式。
SNMP的缺點
SNMP沒有規範MIB該有哪些受監控的項目,導致MIB規格不相容(後來在RFC1213中定義了MIBII才規定了某些受監控的項目)。
SNMP所蒐集的MIB資訊偏重在受管理的網路設備本身的運作狀態或輪詢當時的網路狀態(點),而無法回報出實際的網路狀態(面)。
管理訊息資料庫 (MIB)
SNMP被設計成適用於各類型的網絡設備,故它所管理的資訊亦隨著設備的不同而千差萬別,每種網絡或設備對其資料的表達方式亦存在差異,為將這些資訊納入同一套管
理系統,就須採用一套抽象的語法來描述所有類型的資訊,為此,SNMP定義了網管資訊庫(MIB),階層性描述所有受管理資訊的屬性,並稱這些受管理的資訊為
SNMP物件(object)。
MIB可分為標準(Standard)MIB及私人(Private)MIB兩大類,標準MIB適用於所有網絡設備,而
PrivateMIB則由廠家自行定義,以反映設備的獨特變量值,合法的PrivateMIB需要向有關機構申請,務求令每一個PrivateMIB都是世上獨一無二的。
通常包含了網路設備的網路設定,運作狀態,網路介面,路由表,IP封包之傳送/接收/遺失,....。
網路安全
資訊安全的CAIN原則
所謂的CAIN原則(CAINprinciple),是與資訊安全關係密切的四項基本概念:機密、存取、完整、不可否認。
CAIN四項原則本身並非技術,反而需要相關的技術來維護這四
項原則。
如果能瞭解這四項重要的概念,對資訊安全將能有事半功倍的效果。
隱密性(Confidentiality):資料在網路上傳遞時的加密,如對稱與非對稱金鑰加密。
存取性(Access)
可用性(Availability):獲得授權的使用者在需要的時候,就能使用資訊。
身份驗證(Authentication):確認要使用網路資源的使用者身份,如設定密碼,晶片卡,生物特徵識別。
完整性(Integrity):透過檢查碼確認收到的資料未被竄改,如MD5。
不可否認性(Nonrepudiation):使用者無法否認執行一個操作或初始一個交易。
密碼學(Cryptography)
密碼傳統上都與軍事,外交或情報上的應用有關,當日常生活電子化(電子商務,電子公文,電子投票...)之後,密碼技術便愈來愈重要了。
資料在加密(Encryption)處理前稱之為明文(Plaintext)
經過加密處理後稱之為密文(Ciphertext)
加解密資料的方法稱之為演算法(Algorithm),相當於一把鎖
使用加解密演算法時所需的一組變數稱之為密鑰(secretkey)
演算法本身沒有秘密,關鍵在於密鑰。
基本的加解密方式
替代(substitution):以對照表為演算法,如凱薩移動密碼(caesarshiftcipher)。
調換(transpostion):以位置調動順序為演算法,如明文"pleasetransferon",以"74512836"的順序重新調換位置,得到"astlerpefeonsnar"。
數學函數(mathematicalfunction):利用1對1映設(one-to-onemapping)特性的數學函數作為演算法,如f(x)=ASCII(x)+2。
混和(combined):混用上述的方法。
複雜的加解密方式
現代的密碼技術最重要的特點為,無法由演算法將密文還原為明文,這類演算法是一種無法還原的編碼函數,是現代密碼學的基石
單向雜湊函數(one-wayhashfunction)
對稱金鑰加解密函數(SymmetricEncryption)或稱私有金鑰加解密函數(PrivateKeyEncryption)
非對稱金鑰加解密函數(Asymmetricencryption)或稱公開金鑰加解密函數(PublicKeyEncryption)
單向雜湊函數(one-wayhashfunction)
單向雜湊函數,可產生雜湊值(hashvalue)或稱為訊息摘要(messagedigest)。
輸入雜湊函數的資料沒有長度的限制,但產生的雜湊值長度固定。
雜湊函數的運算不會太複雜,亦即電腦在執行時不會耗費太多CPU資源。
雜湊函數具有單向特性,因此實務上無法利用雜湊值來求出輸入的原始資料。
即使輸入的資料僅有一個位元不同,產生的雜湊值卻會有很大的差異。
單向雜湊函數本身無須密鑰參與,但常用來產生對稱金鑰加解密函數所需之密鑰。
常見的雜湊函數有MD5(MessageDigestalgorithm)和SHA-1(Secure
HashAlgorithm)。
對稱金鑰加解密函數(SymmetricEncryption)
資料傳送端以一把隨機產生的密鑰,搭配加密的演算法,針對明文資料運算後,產生加密的密文資料。
資料接收端收到密文資料後,必須使用資料傳送端加密時所使用的密鑰,針對密文資料解密,還原成明文資料。
利用相同的密鑰與加解密函數,以執行加密與解密的動作,不同的演算法其密鑰的長度也不一樣。
在對稱式加解密系統中,若沒有密鑰,即使知曉加解密函數,依舊無法依據『密文』推算出『明文』。
這種缺乏密鑰便不可還原的特性,也就成了對稱式加解密系統的安全屏障。
對稱式加解密系統最主要的功能當然是資料加密,除此之外也可應用在驗證身份上。
主要的問題在於密鑰的傳遞與密鑰的數量(n*n-1)/2。
(n為使用者的數量)
常見的對稱式加密函數有DES,triple-DES,IDEA,AES等。
非對稱金鑰加解密函數(Asymmetricencryption)
以公鑰(publickey)加密而成的密文,只有用私鑰(privatekey)才能解譯出明文;以私鑰加密而成的密文,只有用公鑰才能解譯出明文。
使用者先自行產生一對金鑰:一隻公鑰,一隻私鑰。
將公鑰公佈給眾人知道,並將自己的私鑰藏好。
儘管公鑰公開給眾人知情,但有了公鑰並沒有辦法推算出私鑰來。
若使用者想傳送文件,只需將自己的文章透過私鑰加密,再傳送出去,對方收到這份密文後,發現可以用其所公佈的公鑰解譯出明文,便可確認這份明文是該使用者發出的。
若有人想發送秘密文件給該使用者,只需以該使用者的公鑰將文件加密成密文,再傳送出去,如此一來這份密文就只有持有相對應私鑰的這位使用者才有辦法解譯出來。
若兩人之間想進行秘密資料傳輸,只需將資料先以已方的私鑰加密,然後以對方的公鑰再加密一次,經過兩道加密程序後才傳送出去。
(用私鑰加密是為了確認身分;用公鑰加密則是為了保密)。
非對稱加解密函數的複雜程度通常都高於對稱式加解密函數,若完全採用非對稱加解密系統,對電腦運算是一大負擔。
所以在實際的應用上大都搭配對稱式加解密函數與雜湊函數一併使用。
最常見的應用為數位簽章(DigitalSignature)。
密鑰的數量為2n個(n為使用者的數量)。
常見的非對稱式加密函數有RSA,ElGamal,ECC等。
密碼攻擊的形式
被動式攻擊(PassiveAttacks)
只知密文攻擊(ciphertext-onlyattack)法:利用密文希望可以還原出明文來,此類攻擊在現代密碼學上幾乎不可能了。
已知明文攻擊(known-plaintextattack)法:擁有加密前的明文與加密後的密文,然後分析推算出密鑰來。
自選密文攻擊(chosen-ciphertextattack)法:希望由自選的密文及相對應的明文來求得其它密文的明文。
自選明文攻擊(chosen-plaintextattack)法:希望由自選的明文及相對應的密文來求得其它密文的明文。
主動式攻擊(ActiveAttacks)
竄改訊息
偽造訊息
阻斷訊息
密碼攻擊的技巧
非理性武力攻擊(brute-forceattack)法:依密鑰長度作各種排列組合的嘗試,可能有2n種可能。
密鑰長度每增加1個byte,難度便增加2倍,增加10個byte,難度便增加1024倍。
字典攻擊(dictionaryattack)法:密鑰通常不夠亂,而是以使用者能夠記憶的字串為主,因此利用英文字母在加減數字與大小寫的變化來降低亂度(entropy)的方法。
惡意者入侵的步驟
收集資訊:搜尋引擎,主機掃瞄(Hostscanning)(TCP/UDPportscanning),whois,nslookup,
ping
滲透:
正面入侵:利用系統設定上的瑕疵,循正常登入機制入侵,如暴力入侵法(BruteForceAttack)。
背面入侵:利用系統設計上的缺失或弱點(Vulnerability)入侵,例如緩衝區溢位(BufferOverflow)攻擊法
攻擊:
掠取資訊:網路監聽(sniffering),木馬(Trojan),蠕蟲(Worm)
破壞活動:分散式阻斷服務(DistributedDenialofService;DDoS)攻擊的代理程式,邏輯炸彈(Logical
Bomb),病毒(Virus)等
掩飾:
刪除登入與連線等記錄
留下後門程式
蠕蟲與病毒
蠕蟲指的是「利用系統漏洞」來達到傳播目的的惡意程式,病毒指的是藉由檔案感染,像是附加部分病毒碼在其它檔案中,來達到傳播的目的。
誰在攻擊
通常一個單位都會花費80%的時間與金錢在阻止外部的威脅上,事實上有70%~80%的安全事件都是內部的員工所為,也許是因為外部的安全入侵行為常被大幅的報導,因此一般單位都把精力花費在對抗外部的攻擊上。
外部的威脅主要來自所謂的ScriptKiddie,ScriptKiddie並不具備專業知識,他們僅為了炫耀或有趣的理由,利用現成的駭客工具進行攻擊,他們大多是透過國外的駭客討論群組取得漏洞的攻擊程式(exploit
code),開始找尋目標,攻克後並植入後門程式,這些受害的機器系統管理者,若沒有安全意識,可能永遠不知道自己的系統已經洩漏機密資訊或已成為跳板,因此只要系統的漏洞公佈後到修補前都是可攻擊的空窗期。
外部攻擊者:怪客(Cracker),指令小子(Scriptkiddies),瘸子(Lamer),離職員工等。
動機有商業考量,政治考量,能力展現,漫無目的等。
內部攻擊者:內部員工的動機有心懷不滿,粗心大意等。
在帳戶管理上
不要因為方便,給使用者管理者的密碼,要詳細考慮給予的帳戶權限。
強迫使用者在設定密碼時,必須混用大小寫字母、數字和特殊字元。
設定定期更新密碼,且密碼長度不得少於八個字元。
//可從網路下載一些駭客工具來測試密碼的安全性。
依使用者上班時間來限定使用者登入網路的權限,例如,上白天班的臨時雇員不該有權限在三更半夜登入網路。
在檔案管理上
設定檔案與目錄的權限。
設定磁碟配額。
在系統管理上
使用網際網路防火牆
眾所周知,提供對外連線服務的網站伺服器,對於port的控管是一大重點,可以啟動其TCP/IP篩選功能。
//區域連線/內容/InternetProtocol/內容/進階/選項/內容
XP與2003Server可以啟動內建的網際網路連線防火牆。
//區域連線/內容/進階/設定
取得系統與應用程式更新,並設定自動排程
扣除主動下載或安裝一些不安全的軟體外,OS本身的漏洞也是一個很大的問題,目前微軟提供的重大更新網站提供了最新的修補程式。
//開始/WindowsUpdate
作業系統更新:WindowsUpdate
應用程式更新:OfficeUpdate
使用最新的防毒軟體,並設定自動排程更新病毒碼
同時在伺服器和桌上電腦安裝防毒軟體。
這些軟體還應該設定成每天自動下載最新的病毒定義檔。
MailServer也應該安裝防毒軟體,這類軟體可掃描所有寄進來的電子郵件,尋找被病毒感染的附件,若發現病毒,郵件馬上會被隔離,減低使用者被感染的機會。
使用較安全的應用程式
例如使用Firefox來取代IE的瀏覽功能等
服務管理
在對外伺服器上所提供的服務,建議提供混和式的環境,例如使用Apache的WebServer與GuildFTPd的FTPServer
愈多的服務所造成的未知漏洞愈多,愈舊版本之伺服器所含之漏洞愈多
IIS
網站不要設定在預設的目錄中//c:\inetpub\wwwroot
定期進行WindowsUpdate
FTP
建議使用其它廠商的產品,若一定要使用內建的FTP服務,則必須設定只允許匿名連接//例如:GuildFTPd
資安資訊
國家資通安全會報技術服務中心網址:http://www.icst.org.tw/
台灣電腦網路危機處理中心網址:http://www.twcert.org.tw/
微軟資訊安全首頁網址:http://www.microsoft.com/taiwan/security/default.mspx
Hinet資安即時通報網址:http://hisecure.hinet.net/secureinfo/hotnews.php
InformationSecurity資安人科技網網址:http://www.isecutech.com.tw
名詞整理
URL(UniversalResourceLocator)
這是一種用來標示Web上資訊位址的方式─明確地指出資訊所在的位置。
您可給分處各地的朋友一個URL,他們就能取得同一份資訊,就像是郵寄地址或是電話號碼一樣。
URL
是用HTTP(http://)、FTP、Gopher(ftp://及gopher://),與NEWS(news://)等來做開頭。
packets(chunksofdata)
封包:一堆資料的集合
參考書目
呂崇富,"網路規劃與管理實務",學貫行銷,ISBN:986-7198-07-7
網路資源
鳥哥的Linux與ADSL私房菜
Internet教學課程
TCP/IP
與OSI/基本概念
Linux
系統管理入門
TCP/IP
與OSI之比較研究
TCP/IP
工作模型
OSI
模型第三層:網路層(NetworkLayer)
主網站:http://peterju.notlong.com
(目前轉址至http://irw.ncut.edu.tw/peterju/)
|
|
|
|
|
Thisworkislicensedundera
Creative
CommonsLicense
延伸文章資訊
- 1110-1 計算機網路概論筆記目錄(清大開放式課程) - HackMD
110-1 計算機網路概論=== - [計算機網路概論筆記目錄](https://hackmd.io/@0xff07/ByADDQ57Y) Linux Network Stack ---
- 2資管所網路概論筆記彩色電子檔(資管筆記研究所入學考試讀書 ...
買家確認已收到電子檔後點選「完成訂單」 此筆記是我2019~2020讀大碩林老師的網路課程時,自己做的讀書筆記,由於該教師的課程內容涵蓋高普考及研究所,所以只針對我 ...
- 3電腦網路概論講義 - 高雄市教育局
(1)區域網路(Local Area Network:LAN). 利用簡單的網路連接技術,將地理位置不同且具有獨立功能的多部電腦連接起來。它的範圍可以到一家公司或學校,是目前最常見的網 ...
- 4網路概論
8 月09, 2018; /; 網路概論 ... 假設有個網路環境如圖所示,左右兩邊的router都可以處理IPv6及IPv4的封包 ... 這學期有網路與通訊,筆記一下之前學過的.
- 5網路筆記Internet note
什麼是網際網路(Internet); 網路類型; 傳輸媒體; 網路傳輸設備; 網路整體架構; IPv4; IPv6; UDP; Routing; NAT; DHCP; DNS; 網路管理; 網路...