• 沒有找到結果。

domain name/IP 是一

N/A
N/A
Protected

Academic year: 2022

Share "domain name/IP 是一"

Copied!
36
0
0

加載中.... (立即查看全文)

全文

(1)

Outline

™ Introduction

™ IP Address & MAC Address

™ TCP/UDP/ICMP

™ IP Gateway, Network Mask, TTL

™ Routing Protocol

™ Network Address Translation (NAT)

™ Domain Name System (DNS)

™ Dynamic Host Configuration Protocol (DHCP) / Asymmetric Digital Subscriber Line (ADSL)

™ HyperText Transfer Protocol (HTTP) Protocol

™ Virtual Private Network (VPN)

(2)

DNS 簡介

™Domain Name System (DNS)

™概念及機制是定義在RFC 1034,實作和規格的 部分是定義在RFC 1035中

™DNS是在TCP/IP通訊協定中用來對應主機名稱 以及IP位址的分散式資料庫

ƒ 以主機名稱查詢IP位址

ƒ 以IP位址查詢主機名稱

ƒ 與 Mail System 結合,提供 Mail routing 的功能

™IP Address 便利電腦處理,但不方便人腦記 憶,故使用階層式之名稱Domain Name

™例:www.google.com↔72.14.235.99

(3)

DNS server

www.google.com 的IP address為

(4)

™早期這個

domain name 與 IP 的對應表是記

在每部機器內,當電腦個數不多還好,但是電腦 數目一多就會發生問題了,主要有下列問題:

ƒ Traffic & Load

ƒ Conflict

ƒ Consistency

(5)

™整個Internet上的電腦如此眾多,如何保證兩 部電腦不會有相同的

domain name/IP 是一

個很重要的問題。 幾個重要的觀念如下:

ƒ Domain (網域)

將整個 internet 分成許多 domain,每個 domain 下又 細分為許多 domain,然後這些細分的 domain 視實際 需求又再細分成許多 domain,一直循環下去。基本上 每個 domain 內的 mapping 由一部主機負責管理。

ƒ Authorize (授權)

每個 domain 都可因實際需求再細分成許多 sub domain。上層的 domain 可以將其分出的某個 sub domain 的 domain name 與 IP mapping 交由另一部 機器管理,這個動作我們稱之為 authorize。

(6)

DNS 架構

(7)

網域(Domain)

™命名原則

ƒ 分散式, 分層管理

™基本分類

ƒ 正解網域(forward domain):以Domain Name 查IP Address

ƒ 反解網域(reverse domain):以IP Address 查 Domain Name

™根(Root):位於DNS階層最上層之DNS伺服器

(8)

™DNS 根伺服器下的正解網域可分成兩種:

ƒ 國家網域(ccTLD:country-code Top-Level Domain):以國家為根伺服器的,如台灣

www.edu.tw,日本www.google.co.jp

ƒ 一般分類網域(gTLD:generic Top-Level

Domain):以一般分類為根伺服器的Domain Name,

如網路組織www.hinet.net,組織www.linux.org

(9)

完整網域及反解網域

™完整網域(Fully-Qualified Domain

Name, FQDN):絕對網域名稱

ƒ Domain Name 為階層式的,有相對及絕對之分,於 Domain Name 最後面加上. 即為絕對網域名稱

ƒ 例:www.linux.org.

™

In-Addr.Arpa網域:反解網域

ƒ 在網域架構中另外有一個特殊的分支為反解網域

ƒ 作用在於可查詢IP Address 歸屬的Domain Name

ƒ 一般設定Domain Name 與反解網域無關,必須額外 設定才行

™ARPA(Advanced Research Project Agency) 美國高等研究計劃署(乃美國國防高等研究計劃 署之前身,創立了Internet的前身ARPANET)

(10)

正解:

winnie.corp.hp.com -> 15.16.192.152 代表在負責 corp.hp.com 這個 sub domain 的機器上, 可以查到其

mapping table 上有一筆記錄是 winnie -> 15.16.192.152.

反解:

15.16.192.152 -> winnie.corp.hp.com 代表在負責 192.16.15.in-addr. Arpa (注意是反過來寫, 因為 top domain 要 在最後面) 這個 sub domain 的機器 上, 可以查到其 mapping table 上有一 筆記錄是 152 -> winnie.cop.hp.com Hostname winnie.cop.hp.com

(11)

Note

™負責

forward mapping 和 reverse mapping 的機器不一定是同一部

ƒ 負責 corp.hp.com domain 與負責 192.16.15.in-

addr.arpa 的機器不一定是同一部機器,即使在同一部 機器,如果不注意的話,兩邊的內容可能也會有不

match 的情形。

™

domain 與 ip subnet 並沒有一對一關係

ƒ 舉例:成大電機的 domain 是 ee.ncku.edu.tw,但是因 為成大電機內部機器數多的關係,所用到的 IP subnet 有 140.116.72,140.116.49,140.116.163,

140.116.156,140.116.227 共 5 組

(12)

Name server

™負責記錄

forward/reverse mapping 的機

器會執行一個叫

name server 的軟體, 透過這

個軟體回應來自其它機器對

domain name 或 IP 的查詢

™

zone & domain

每個

domain交由一個機器來負責,其實更精

確地說應該是每個

zone 交由一個 name

server 來負責,所謂 zone 就是把一個

domain 扣掉分給下層負責的部份,剩下來的

就是

zone

(13)

Zone

edu com gov

princeton

mil uk

mit cisco

yahoo

cs ee physics

(14)

™

Primary/Secondary

每個

zone 交由一部 name server負責的作

法會有一個問題,萬一這個

name server 當

掉,可能造成

Internet上其它機器無法取得屬

於這個

zone 的資料(就是 domain name

ip mapping)。為了避免這種情形, 我們可

以把這個

zone 的資料同時交給多部 name server 負責。原本的這部稱為 primary name server,其它的稱為 secondary

name server。Secondary name server

會定期將

primary name server 上 zone

的資料拷貝一份下來備用。

(15)

™對於上層的

name server 而言,它只是設定

某個

zone 同時授權給一部以上的下層 DNS server,但是它並不去分辨誰是真正的

primary,誰是 secondary。它只是依據順

序尋問,當第一部負責某個

zone 的 DNS

server 當掉時,它會依序找下一個負責的DNS

server。

(16)

DNS 的組成

™

DNS 系統由三個部分組成:

ƒ DNS 的資訊資料部分

ƒ DNS Server

ƒ Resolver(可以說是DNS Client)

User

Program Resolver Name

Server User

Queries

User Responses

References Cache Additions Responses

Queries

Local Cache Network Kernel

cache

(17)

DNS 的運作

1.應用程式呼叫Resolver,開始DNS 查詢 2.Resolver查詢本身的Cache 是否有相關資

訊,若有則回傳,無則產生DNS Packet 發送 給Primary DNS,若無回應則傳給

Secondary DNS

3.DNS伺服器接到查詢後,查詢本身的Cache 和 DNS 資料庫是否有相關的資料,有則將資料傳

回,無則視

DNS 查詢的類別而定:

A.Iterative Query:回傳給查詢者一串DNS 伺服器的清 單,讓查詢者自己查詢以得到答案

B.Recursive Query:繼續往上層的DNS 查詢,直到查 到結果後自己將結果傳給查詢者

(18)

4.DNS伺服器會以3. 的方式查詢直到找到結果或

是確定無結果為止,往上到Root 後會往下面相 關的DNS 找

5.在各伺服器查詢到後會儲存在其cache裡一段時

間,直到該資料儲存時間截止(expire)

(19)

Note

™一般說來,resolver 對 local DNS server 都是

recursive query,而 DNS server 之

間的

query 多是iterative。

™大部份的

DNS server 都可以接受

recursive 和 iterative 兩種 query 方式,

但是考量負載問題,

root name server 只接

iterative query。

(20)

™

Recursive(遞回式):

ƒ 客戶端只丟出一個詢問給其所屬的DNS伺服器

ƒ DNS伺服器就會不斷地查詢,直到有結果為止

ƒ 最後把結果傳回來給客戶端 DNS server

Resolver DNS

query

Upper level DNS server lists

(21)

™

Iterative(交談式):

ƒ 詢問其他DNS伺服器是否知道結果

ƒ 如果沒有這個記錄,則會傳回一個參考位址,也許這個位 址可以查到需要的資料

DNS server

Resolver DNS

query

Answer to DNS query

(22)

Question:

™當

local DNS 的Cache存下一些資料以便加速

時, 萬一真正的資料有修改時怎麼辦呢?

(23)

Answer:

™

DNS server 針對它負責的 domain 資料有

一個

TTL(time to leave)參數, 用來告訴其

DNS 在 cache 其資料時, 資料只應該

cache 多久. 超過 TTL, 那個 cache 就要視為

過期無效.

(24)
(25)

DNS 查詢範例

DNS查詢一般是以 UDP packet傳送查 詢訊息向name

server索取資料

查詢

www.dynadns.com.tw

(26)

DNS Packet

™上面範例之實際Packet 列表

™由下圖可看出有部分查詢為Recursive,部分 為Iterative

(27)

DNS Response Packet

™

Server 只提供Iterative Query,因此回傳

Authoritative DNS 的列表

(28)

*gethostbyname()

™Unix 系統下用來設定或是由Domain Name 取 得位址資訊

™gethostbyname() 的回傳Structure in_addr 的資料結構不只有IP 資訊,還有Official Name 以及Alias 等資訊

™回傳NULL 為查詢錯誤,狀況有兩種:

ƒ 在/etc/hosts 檔案裡面沒有相關的資訊

ƒ 查詢/etc/resolv.conf裡的DNS Server 找不到資訊

(29)

DNS Proxy

™由於Internet 的連線狀況多,比起LAN不穩定,

因此可使用DNS Proxy避免對外線路出問題,並 可加速DNS Query的速度

DNS Proxy

Internet

Internet

DNS server

DNS server Resolver

Resolver

(30)

*DNS Packet (1)

™DNS Packet 是由一個以上的Resource Record (RR) 所組成

™Resource Record 的類型:

ƒ A:IP 位址

ƒ CNAME:Domain Name

ƒ MX:Mail Exchange Records

ƒ NS:其他Name Server 的主機名稱

ƒ PTR:指向其他Domain Name Space 的指標

ƒ SOA:Zone 的授權(Authority)

(31)

*DNS Packet (2)

(32)

Linux Dynamic DNS Client/Server

™

Dynamic DNS(DDNS)

ƒ 動態IP位址的廣泛使用,造成傳統DNS的不適用

ƒ IETF (Internet Engineering Task Force)定義了RFC 2136:對原有的DNS系統增加了Update的動作,讓它 能夠處理動態IP位址的網域名稱(domain Name)和IP 位址的相互查詢

(33)

DDNS運作原理

™

DDNS兩種運作模式

ƒ Client端直接對Server送出DNS Update要求修改主機 和IP address的對應

ƒ 透過其他的Client/Server程式,來修改DNS的 resource records.

DDNS Server Client

DNS Server DNS

update packet

DNS update

packet

(34)

Names translated into addresses

Mail Program

TCP

IP Name

Server

User

c user@cs.princeton.edu

d cs.princeton.edu

e 192.12.69.5 f 192.12.69.5

g 192.12.69.5

(35)

Zone

edu com gov

princeton

mil uk

mit cisco

yahoo

cs ee physics

(36)

Name resolution

Root name server

Princeton name server

CS name server Local

name server Client

cicada.cs.princeton.edu

c

j

192.12.69.60

e princeton.deu,128.196.128.233

f cicada.cs.princeton.deu

gcs.princeton.deu,128.196.128.233

d cicada.cs.princeton.deu

h cicada.cs.princeton.deu

i cs.princeton.deu,192.12.69.60

參考文獻

相關文件

SPCE061A 的開發是通過線上調試器 PROBE 實現的。它既

在前面幾節中要證明一個 integral domain 是一個 unique factorization domain, 我們都去證明這個 integral domain 中的 irreducible elements 和 prime elements 是

• 「在香港定居的非華語學生與其他本地學 生,同樣是香港社會的下一代。……為促

  SOA 記錄裏,記載著關於該 域名權責區域的一些主 要網域名稱伺服器 ( primary DNS server) 和其它 相關的次要名稱伺服器 ( secondary DNS server)

(A) NAT (Network Address Translation) (B) DHCP (Dynamic Host Configuration Protocol) (C) DNS (Domain Name Server) (D) ARP (Address Resolution

Registry Server 是建構於第三方具有公信力的一個組織,而 Registry Server 在 Web Service 的架構中,主要的功能類似於提供服務查詢(Yellow

首先遊戲廠商將 Master Server 啟動。第一台 Local Game Server 啟動後,向 Master Server 登入,Master Server 會告知這台 Local Game Server

Table 本身可以轉變為 Element type。在文件中每一行的資料 都會產生一個 element , 假如這個模組的內容是 EMPTY 就將 columns 轉變成