2015年8月2日 星期日

tcp/ip筆記

網路線

腳位 #1 #2 #3 #4 #5 #6 #7 #8
EIA/TIA 568A 白綠白橙白藍白棕
EIA/TIA 568B 白橙白綠白藍白棕
---------------------------------------------------------------

switch(交換器) 資料連階層、實體層
router(路由器) 網路層、資料連階層、實體層
hub(集線器) 實體層


router(路由器) 可以將不同實體IP做串聯
bridge(橋接器) 不可以將不同實體IP做串聯


straight-through 兩端同時是568A或是568B網路線,用於「電腦<->hub」、「電腦<->switch」
crossover 一端使用568A另一端使用568B,用於「電腦<->電腦」、「電腦<->hub」、「switch<->switch」
---------------------------------------------------------------

IP位址:
分為二位、四位分群
二位
10001100
10001100
11001100
11001100

四位
10001100
10001100
10101100
10101100


#IP class位址說明(classful internet address)
---------------------------------------------------------------

#IP協定特性:
  1. 非連線的傳輸協定(Connectionless)
  2. 非同步通訊(Asynchronous Communication)
  3. 不可靠的傳輸協定(Unreliable)
  4. 較有效率的傳輸協定(Efficient)
---------------------------------------------------------------
#ARP位址解析協定(Address Resolution Protocol):
IP address轉換成Mac address是透過ARP(Address Resolution Protocol)協定,Mac address轉換成IP address則是透過RARP(Reverse Address Resolution Protocol)
只適用於下面兩層,ARP只適用於區域網路(LAN)、無法越過第三層的網路層。或是路由器與路由器間的廣域網路(WAN)之間。

Operation Code 封包操作類型
1 ARP Request
2 ARP Reply
3 RARP Request
4 RARP Reply
來源主機發出「ARP Request」封包
目的主機回應「ARP Reply]封包

舉例流程:
案例:HostA > HostB
流程1:來源電腦(HostA) > DNS > ARP cache > 廣播詢問目標電腦  > 目標電腦回應(HostB),進行雙向通訊(ARP Reply)
流程2:來源電腦(HostA) > DNS > ARP cache > 廣播詢問目標電腦  > 丟棄封包

#網路剪刀手原理就是ARP弱點攻擊
#在區域網路內,真正用來定址傳送的是利用MAC位址。
#ARP主要是透過廣播方式

查詢ARP cache
$ arp -a

新增靜態型態進ARP cache
$ arp -s [IP Address] [Mac address]

刪除ARP cache
$ arp -d [IP address] [Mac address]


---------------------------------------------------------------
#ICMP網際網路控制訊息協定(Internet Control Message Protocol)
ICMP是TCP/IP網路中傳遞一些基本訊息的協定,驗證部分較為薄弱。
主要目的在於輔助IP協定的不足,回傳「錯誤回報」、「偵測錯誤」

查詢
type ICMP訊息類型說明
0 Echo Relpy(回應應答)
8 Echo Request(回應要求)
9 Router Advertisement(路由器回應)
10 Router Solicitation(路由器要求)
13 Timestamp Request(時戳要求)
14 Timestamp Reply(時戳應答)
17 Address Mask Request(位址遮罩要求)
18 Address Mask Reply(位址遮罩應答)
錯誤回報
type ICMP訊息類型說明
3 Destination Unreachable(目的無法到達)
4 Source Quench(抑制來源)
5 Redirect(重新導向)
11 Time Exceeded for a Datagram(時間逾時)
12 Parameter Problem on a Datagram(參數錯誤)

舉例流程:
案例:HostA > HostB
流程1:來源電腦 ICMP Request(HostA) > ARP Request(HostA) > DNS > ARP cache > 廣播詢問目標電腦  > 目標電腦回應(HostB),進行雙向通訊(ARP Reply) > > ICMP Reply(HostB)

#阻絕服務攻擊DoS原理就是ICMP弱點攻擊

#封包追蹤路徑
windows:
tracert [IP address]
linux:
traceroute -P ICMP [IP address]

補充參考連結:

  1. http://idobest.pixnet.net/blog/post/22040166-%5B%E8%BD%89%E8%B2%BC%5D-traceroute-%E7%9A%84%E5%8A%9F%E8%83%BD%E4%BB%8B%E7%B4%B9


---------------------------------------------------------------
#路由協定(Routing Protocol)
主要目的在於幫助來源主機找到目的主機所經過的路徑。
常使用兩種動態路由協定RIP(Routing Information Protocol)、OSPF(Open Shortest Path First)。
距離向量路徑選擇DV Routing(Distance Vector Routing),主要是計算兩者之間距離(稱躍點數),並依據最近躍點數最少為原則進行

外部閘道有EGP:EGP、BGP
內部閘道有IGP:RIP、OSPF

//查看路由
$ ip router

//新增路由
$ ip router add [network destination] via [geteway] metric [metric] dev [interface#]

//修改路由
$ ip router change [network destination] via [geteway] metric [metric] dev [interface#]

//刪除路由
$ ip router del [network destination]
---------------------------------------------------------------
#UTP(User Datagram Protocol)
 著重兩端伺服器之間的溝通協定,忽略中介節點的路由無關,透過「路由協定」尋找最佳路徑。
舉例流程:
案例:HostA > HostB 流程1:來源電腦(HostA) > DNS > ARP cache > 廣播詢問目標電腦 > 目標電腦回應(HostB),進行雙向通訊(ARP Reply) > SNMP request > SNMP response

服務名稱 PORT 傳輸協定
DNS(Domain Name System) 53 UDP
SNMP(Simple Network Management Protocol) 161 UDP
SNMP Trap 162 UDP
RIP(Routing Information Protocol) 520 UDP
FTP data(File Transfer Protocol) 20 TCP
FTP Control(File Transfer Protocol) 21 TCP
SSH(Secure Shell ) 22 TCP
Telnet(Telecommunication network) 23 TCP
SMTP(Simple Mail Transfer Protocol) 25 TCP
HTTP(HyperText Transfer Protocol) 80 TCP
POP3(Post Office Protocol - Version 3) 110 TCP

---------------------------------------------------------------

#TCP(Transmission Control Protocol)
主要在屬於傳輸層
TCP是一個完整的協定,他會經過「建立連線」、「資料傳輸」、「關閉連線」也就是「三向交握」(Three-way handshake)
TCP連線可跳脫「網路層、資料連結層、實體層」,直接進行兩端「傳輸層」連線
TCP是一條全雙工(full-duplex),主要以「正確性」為主的協定
TCP是同步傳輸、可靠的傳輸協定、較無效率傳輸協定、流量控制
TCP對資料處理方式以byte為一個最小基本單位,傳送端要透過TCP傳輸之前,必須先進行編碼成一個一個位元組(byte),這些位元組所組成的集合,稱為「位元組串流」(Byte stream),TCP會將產生的「位元組串流」放入暫存區,稱為「輸出緩衝區」(output buffer)

---------------------------------------------------------------
#IPv6
IPv4傳播模式有,單點傳播(unicast)、群播(multicast)、廣播(broadcast),IPv6傳播方式中,將廣播列為群播的一個特例,所以少了一個「廣播」、多了一個「任意傳播」(Anycast)

---------------------------------------------------------------
#動態主機組態協定DHCP(Dynamic Host Configuration Protocol)

完整網域名稱FQDN(Fully Qualified Domain Name),與IP位置一樣採用「點狀表示法」
網域名稱和作業系統的檔案一樣,分為「絕對路徑」、「相對路徑」
網路資訊中心NIC(Network Information Center)

網址位址轉換NAT(Network Address Translation)標準的訂定,即是處理IP位址短缺現象,也就是由內部網路使用「私人IP位址」再透過NAT伺服器的IP轉換機制,轉換成外部網路的「公開IP位址」
1.網址位址轉換NAT(Network Address Translation):此種轉換方式只負責轉換IP位址
2.NAPT(Network Address Port Translation):此種轉換機制不僅轉換IP位址,也轉換連接port

windows DNS清除方式
#清除
$ ipconfig/flushdns
#查詢cache
$ ipconfig/displaydns
---------------------------------------------------------------
#網路管理與網路安全:
管理範圍有錯誤管理、組態管理、效能管理、帳務管理、安全管理
安全管理有對稱金鑰系統、非對稱金鑰系統、雜湊函數、數位憑證、電子簽章
資訊安全基本項目:資料保密性或隱私性(Data Confidentiality)、資料完整性或正確性(Data Integrity)、鑑別性或認證性(Authentication)、不可否認性(Non-Repudiation)、存取控制(Access Control)、可用性(Availability),通常要達到以上基本項目,都要使用密碼學的技術
密碼學應用基本項目:
1. 演算法(Algorithm):
分為加密演算法(Encryption Algorithm)與解密演算法(Decryption Algorithm)
2. 本文(Text):
分為可閱讀性本文(Readable Text)與不可閱讀性本文(Unreadable Text)
3. 金鑰(key):
分為加密金鑰與解密金鑰

傳統密碼學基本技巧:置換(Transposition)、取代(Substitution)
近代密碼學基本技巧:串流加密法(Stream cipher)、區塊加密法(block cipher)
串流加密主要是處理「影音加密、電話語音加密、無線網路傳輸加密」,並以位元組(Byte)為基本的單位做傳送,所以針對位元組流(Byte Stream)進行加密的方式稱為(串流加密法),主要利用XOR基本運算技術加密
區塊加密法主要針對「電子資料」,將資料切個成大小相同的區塊,再依據不同演算法進行加密,稱為區塊加密法
對稱式金鑰加密

非對稱式金鑰加密(Asymmetric Key Encryption System):對稱式金鑰加密系統,加、解密雙方是共同擁有一把相同的密鑰。公鑰加密必須用私鑰解密、私鑰加密必須用公鑰解密。但是由私鑰加密後傳送出去保密性較低

數位信封(Digital Envelope):將自己產生的「密鑰」加密後的資訊,稱為數位信封,當對方收到「數位信封」後,可以使用自己的「私鑰」將「數位信封」解密,取得內藏的密鑰。
數位憑證(Digital Certificate):主要將申請憑證的擁有者資訊,稱之為「主體識別資訊」(Subject Identification Information),當接受到此憑證的人,亦可取得憑證授權中心的公鑰,進行該憑證身份鑑別,保證憑證內的「公鑰」確實是該主機所擁有。
SSL(Secure Sockets Layer):目前網際網路最普遍被使用的一種安全協定,SSL協定是基於TCP/IP協定組,並位於「傳輸層」之上、「應用層」之下的一種協定,
SSL流程:
1. clinet送出ClientHello訊息給server,表示要求連線
2. server回應ServerHello訊息給client,表示收到要求連線
3. server主動將「數位憑證」傳送給client,此動作主要目的是傳送「數位憑證」中的「公鑰」給client
4. client接收到server「數位憑證」後,從該「數位憑證」取得的伺服器的「公鑰」再利用此「公鑰」自己隨機產生「會議金鑰」加密,形成「數位信封」傳送給伺服器,伺服器可以使用自己的「私鑰」將「數位信封」解密取得「會議金鑰」。之後彼此雙方皆透過「會議金鑰」對傳輸的資料進行加/解密。

---------------------------------------------------------------


專有名詞
  1. 最大傳輸單位(Maximum Transmission Unit MTU)
  2. ISO OSI七層:實體層(Physical)、資料連接層(Data link)、網路層(Network)、傳輸層(Transport)、會議層(Session)、表現層(Presentation)、應用層(Application)
  3. 位移量(Offset)
  4. 來源位址(Source Address)、目的位址(Destination Address)
  5. 位址解析協定ARP(Address Resolution Protocol)、反向位址解析協定RARP(Reverse Address Resolution Protocol)
  6. 網路介面卡NIC(Network Interface Card)
  7. 網域名稱系統DNS(Domain Name System)
  8. 廣播(broadcast)
  9. ARP欺騙攻擊(Address Resolution Protocol Spoofing Attack、ARP Poisoning、ARP Poisoning Routing)
  10. 網際網路協定(Internet Protocol)
  11. 網際網路控制訊息協定ICMP(Internet Control Message Protocol)
  12. 中介節點(intermediate node)、終端節點(end node)
  13. TTL(time to live)
  14. 阻絕服務攻擊DoS(Denial of Service)、分散式阻絕服務攻擊DDoS(Distributed Denial of Service)
  15. RIP(Routing Information Protocol)、OSPF(Open Shortest Path First)
  16. 內部閘道協定IGP(Interior Gateway Protocol)、外部閘道協定(Exterior Gateway Protocol)、EIGRP(Enhanced Interior Gateway Routing Protocol)、BGP(Border Gateway Protocol)
  17. TCP(Transmission Control Protocol)
  18. 全雙工(full-duplex)、半雙工(half-duplex)、多工處理(multi-tasking)
  19. 三向交握(Three-way handshake)
  20. 同步傳輸(Synchronous Transmission)、可靠的傳輸協定(Reliable)、較無效率傳輸協定(Inefficient)、流量控制(Flow Control)
  21. 延遲時間RTT(Round Trip Time)、逾時(timeout)
  22. 輸出緩衝區(Output Buffer)、輸入緩衝區(Input Buffer)
  23. 傳輸控制區塊TCB(Transmission Control Block)
  24. 網際網路地址號碼資源分配管理組織NRO(The Number Resource Organization)
  25. 負載平衡(load balancing)


  26. 簡易網路管理協定SNMP(Simple Network Management Protocol)、簡易閘道監督協定SGMP(Simple Gateway Monitoring Protocol)
  27. 錯誤管理(Fault Management)、組態管理(Configuration Management)、效能管理(Performance Management)、帳務管理(Accounting Management)、安全管理(Security Management)
  28. 網路管理站台NMS(Network Management Station)、管理資訊庫MIB(Management Information Base)
  29. 協定資料單元PDU(Protocol Data Unit)
  30. 資料保密性或隱私性(Data Confidentiality)、資料完整性或正確性(Data Integrity)、鑑別性或認證性(Authentication)、不可否認性(Non-Repudiation)、存取控制(Access Control)、可用性(Availability)
  31. 授權(Authorization)
  32. 加密(Encryption)
  33. 距離向量路徑選擇DV Routing(Distance Vector Routing)
  34. 控制連線(control connection)、資料連線(data connection)
  35. 動態主機組態協定DHCP(Dynamic Host Configuration Protocol)
  36. 網路資訊中心NIC(Network Information Center)
  37. 輪詢RR(Round-Robin)
  38. 網址位址轉換NAT(Network Address Translation)、NAPT(Network Address Port Translation)
  39. 數位信封(Digital Envelope)、數位憑證(Digital Certificate)
  40. 憑證授權中心CA(Certificate Authority)
  41. SSL(Secure Sockets Layer)

Protocol值 名稱 說明
1 ICMP Internet Control Message Protocol
2 IGMP Internet Group Management Protocol
3 GGP Gateway-Gateway Protocol
6 TCP Transmission Control Protocol
8 EGP Exterior Gateway Protocol
9 IGP Interior Gateway Protocol
17 UDP User Datagram Protocol
41 IPv6 Internet Protocol version 6 over IPv4
47 GRE Generic Routing Encapsulation
50 ESP Encapsulating Security Payload
51 AH Authentication Header
58 ICMPv6 Internet Control Message Protocol for IPv6
88 EIGRP Enhanced Interior Gateway Routing Protocol
89 OSPF Open Shortest Path First


推薦書籍
  1. TCP/IP網路通訊協定-TCP/IP Protocol Suite(Second Editor) 陳祥輝



沒有留言:

張貼留言