Slide bài giảng môn Mạng máy tính nội dung chương 4 phần 2 | Học viện Công nghệ Bưu chính Viễn thông

Slide bài giảng môn Mạng máy tính nội dung chương 4 phần 2 của Học viện Công nghệ Bưu chính Viễn thông với những kiến thức và thông tin bổ ích giúp sinh viên tham khảo, ôn luyện và phục vụ nhu cầu học tập của mình cụ thể là có định hướng ôn tập, nắm vững kiến thức môn học và làm bài tốt trong những bài kiểm tra, bài tiểu luận, bài tập kết thúc học phần, từ đó học tập tốt và có kết quả cao cũng như có thể vận dụng tốt những kiến thức mình đã học vào thực tiễn cuộc sống. Mời bạn đọc đón xem!

lOMoARcPSD|36067889
Chương 4: Nội dung
4.1 Gii thiu
4.2 Các mng mch o và mng
chuyn gói
4.3 Kiến trúc ca b định tuyến
4.4 IP: Internet Protocol
§ Định dng gói tin
§ Định địa ch IPv4
§ ICMP
§ IPv6
4.5 Các gii thuật định tuyến
§ Link state
§ Distance vector
§ Hierarchical routing
4.6 Định tuyến trong mng
Internet
§ RIP
§ OSPF
§ BGP
Tng mng 4-32
Tng mng trong mng Internet
Chức năng của tng mng ti b định tuyến và host:
4-33
lOMoARcPSD|36067889
Định dng IP datagram
Phiên bn giao thc IP
32 bits Tng chiu dài
Chiu dài phn head. type of datagram tiêu đ (byte) ver len service length (byte)
“Loại” dữ liu fragment Dùng cho vic
16-bit identifier flgs offset phân mnh/tp
S hop ti đa còn time to upper header hp li lại (được gim
đi live layer checksum ti mi router)
32 bit source IP address
Giao thc tng 32 bit destination IP address
cao hơn thc hin
Ví dụ: trường
phân phối payload đi options (nếu có) timestamp, ghi
Bao nhiu byte cho phn D liu nhận đường đi, tiêu đề gói tin? dài thay
đổi, c th là danh
v 20 byte trong TCP tùy thuc vào TCP sách các router v 20 byte trong IP hay
là UDP segment) đi qua. v = 40 byte + phần tiêu đề ca tng ng dng
Tng mng 4-34
Phân mnh và tp hp li gói tin IP
v Các liên kết mng có MTU
(max.transfer size) frame mc
liên kết ln nht có th.
§ Các loi liên kết khác nhau
Phân mnh:
s có MTU khác nhau Vào: mt datagram
ln
v IP datagram ln s đưc chia Ra: 3 datagram nh hơn
(“phân mảnh”) bên trong mạng
§ Mt datagram s đưc chia thành mt s
datagram
Tp hp li
§ Chúng s đưc “tập hp lại” tại
đích cuối cùng
§ Các bit trong tiêu đề IP được
dùng để xác định th t liên
quan đến các mnh
lOMoARcPSD|36067889
4-35
Phân mnh và tp hp li gói tin IP
Ví d:
Tng mng 4-36
Chương 4: Nội dung
4.1 Gii thiu
4.2 Các mng mch o
mng chuyn gói
4.3 Kiến trúc ca b định
tuyến
4.4 IP: Internet Protocol
§ Đnh dng gói tin §
Định địa ch IPv4
§ ICMP
§ IPv6
4.5 Các gii thuật định tuyến
§ Link state
§ Distance vector
§ Hierarchical routing
4.6 Định tuyến trong mng
Internet
§ RIP
§ OSPF
§ BGP
length
=4000
ID
=x
offset
=0
lOMoARcPSD|36067889
4-37
Định địa ch IP: gii thiu
Tng mng 4-38
lOMoARcPSD|36067889
Định địa ch IP: gii thiu
Hin ti: Không cn quan tâm
WiFi
4-39
Subnet (Mng con)
Tng mng 4-40
lOMoARcPSD|36067889
Subnet
Phương pháp v Để xác định
các subnet,
tách mi giao din t host
hoc router, to thành
các vùng mng
độc lp
v Mi mạng độc lập đưc
gi là mt subnet
Mt n mng con (subnet mask): /24
4-41
Subnet 223.1.1.2
lOMoARcPSD|36067889
Định địa ch IP: Phân lớp địa ch IPv4
Hn chế: lãng phí không gian đa ch
§ Vic phân chia cng thành các lp (A, B, C, D, E) làm hn chế vic s
dng toàn b không gian địa ch
4-43
Định địa ch IP: CIDR
CIDR: Classless Inter Domain Routing
§ Phần địa ch của subnet có độ dài tùy ý
§ Định dạng địa ch: a.b.c.d/x, vi x là s bit trong phn
subnet của địa ch
Phn Phn subnet host
11001000 00010111 00010000 00000000
200.23.16.0/23
Tng mng 4-44
lOMoARcPSD|36067889
Làm thế nào để có được một địa ch IP?
Hi: Làm thế nào để mt host lấy đưc một đa ch IP?
v Mã hóa cng trong mt tp bởi người qun tr h thng
§ Windows: control-panel->network->configuration->tcp/ip -
>properties
§ UNIX: /etc/rc.config
v DHCP: Dynamic Host Configuration Protocol: t động
lấy địa ch t server
§ “plug-and-play
4-45
DHCP: Dynamic Host Configuration Protocol
Mục đích: cho phép host có được địa ch IP mt cách t động t server
mng khi kết ni vào mng
§ Có th làm mới địa ch đang dùng
§ Cho phép dùng lại địa ch (ch gi địa ch khi đang kết ni)
§ H tr cho người dùng di động khi mun kết ni vào mng Khái quát
DHCP:
§ Host gửi thông điệp qung bá “DHCP discover” [optional]
§ DHCP server tr li bằng thông đip “DHCP offer” [optional]
§ Host yêu cầu địa ch IP bằng thông điệp “DHCP request” § DHCP
server gửi địa ch bằng thông điệp “DHCP ack”
Tng mng 4-46
lOMoARcPSD|36067889
Kch bn DHCP client-server
DHCP
4-47
Kch bn DHCP client-server
Tng mng 4-48
lOMoARcPSD|36067889
DHCP: có nhiều địa ch IP hơn
DHCP có th cho phép có nhiều địa ch IP hơn số địa
ch IP được phân b cho subnet:
§ Địa ch ca router ca hop đầu tiên cho client
§ Tên và địa ch IP ca DNS sever
§ Mt n mng (ch ra phn host và phn mng ca một địa
ch)
4-49
lOMoARcPSD|36067889
DHCP: Ví d
v Laptop đang kết ni cn mt đa ch IP, địa ch IP ca router của hop đầu tiên, địa
ch ca DNS server: dùng DHCP
v DHCP yêu cu s được đóng gói trong UDP, UDP được đóng gói trong IP, và IP
được đóng gói trong 802.1 Ethernet
v Gi qung bá khung Ethernet
(đích: FFFFFFFFFFFF) trên mạng LAN, được router đang chạy DHCP server nhn
Ethernet được ct b phn tiêu
v DCP server định dng DHCP ACK bao
gồm địa ch IP của client, địa ch IP ca router của hop đầu tiên cho client, tên
và địa ch IP ca DNS server
DHCP: Ví d
v
đề thành IP, IP đưc ct b phn
tiêu đề thành UDP, UDP được ct
b phần tiêu đề thành DHCP.
Tng mng 4-50
lOMoARcPSD|36067889
v Sau khi được đóng gói ở DHCP server, frame được chuyn tiếp cho client, vic
ct b các phần tiêu đề để thành thông đip
DHCP được thc hin ti client v Lúc này, client biết được địa ch IP ca nó, tên
và địa ch IP của DSN server, và địa ch IP ca router của hop đầu tiên ca nó.
4-51
DHCP: đầu ra trong
Wireshark (LAN nhà)
Message type: Boot Request (1)
Hardware type: Ethernet
Hardware address length: 6
Hops: 0 Yêu cu
Transaction ID: 0x6b3a11b7 Seconds
elapsed: 0
Bootp flags: 0x0000 (Unicast)
Client IP address: 0.0.0.0 (0.0.0.0)
Your (client) IP address: 0.0.0.0 (0.0.0.0)
Next server IP address: 0.0.0.0 (0.0.0.0)
Relay agent IP address: 0.0.0.0 (0.0.0.0)
Client MAC address: Wistron_23:68:8a (00:16:d3:23:68:8a)
Server host name not given
Boot file name not given
Magic cookie: (OK)
Option: (t=53,l=1) DHCP Message Type = DHCP Request
Option: (61) Client identifier
Length: 7; Value: 010016D323688A;
Hardware type: Ethernet
Message type: Boot Reply (2)
Hardware type: Ethernet Đáp ứng
Hardware address length: 6
Hops: 0
Transaction ID: 0x6b3a11b7 Seconds
elapsed: 0
Bootp flags: 0x0000 (Unicast)
Client IP address: 192.168.1.101 (192.168.1.101)
Your (client) IP address: 0.0.0.0 (0.0.0.0)
Next server IP address: 192.168.1.1 (192.168.1.1)
Relay agent IP address: 0.0.0.0 (0.0.0.0)
Client MAC address: Wistron_23:68:8a (00:16:d3:23:68:8a)
Server host name not given
Boot file name not given
Magic cookie: (OK)
Option: (t=53,l=1) DHCP Message Type = DHCP ACK
Option: (t=54,l=4) Server Identifier = 192.168.1.1
Option: (t=1,l=4) Subnet Mask = 255.255.255.0
Option: (t=3,l=4) Router = 192.168.1.1
Option: (6) Domain Name Server
Length: 12; Value: 445747E2445749F244574092;
IP Address: 68.87.71.226;
IP Address: 68.87.73.242;
IP Address: 68.87.64.146
Option: (t=15,l=20) Domain Name = "hsd1.ma.comcast.net."
Client MAC address: Wistron_23:68:8a (00:16:d3:23:68:8a)
Option: (t=50,l=4) Requested IP Address = 192.168.1.101
Option: (t=12,l=5) Host Name = "nomad"
Option: (55) Parameter Request List
Length: 11; Value: 010F03062C2E2F1F21F92B
1 = Subnet Mask; 15 = Domain Name
3 = Router; 6 = Domain Name Server
44 = NetBIOS over TCP/IP Name Server
……
Tng mng 4-52
Làm thế nào có được một địa ch IP?
lOMoARcPSD|36067889
Hi: Làm thế nào để mạng có được phn subnet của địa ch IP? Tr li:
Ly theo phần được phân b t không gian địa ch ca nhà cung cp ISP.
Khi ca ISP 11001000 00010111 00010000 00000000 200.23.16.0/20
T chc 0 11001000 00010111 00010000 00000000 200.23.16.0/23
T chc 1 11001000 00010111 00010010 00000000 200.23.18.0/23
T chc 2 11001000 00010111 00010100 00000000 200.23.20.0/23
... ….. …. ….
T chc 7 11001000 00010111 00011110 00000000 200.23.30.0/23
4-53
Định địa ch phân cp: tích hợp đnh tuyến
Định địa ch phân cp cho phép qung bá hiu qu thông tin đnh
tuyến:
lOMoARcPSD|36067889
Định địa ch phân cấp: định tuyến c th hơn
ISPs-R-Us có nhiều cách định tuyến c th n đến
T chc 1
Định địa ch IP...
Hi: Làm thế nào mt ISP có th lấy được khối đa ch?
Tr li: ICANN: Internet Corporation for Assigned
Names and Numbers http://www.icann.org/
§ Phân b địa ch
§ Qun lý DNS
§ Gán các tên min, gii quyết tranh chp
Tng mng 4-56
lOMoARcPSD|36067889
NAT: network address translation (chuyn
đổi địa ch mng)
138.76.29.7 vi các s hiu cng
ngun khác nhau
4-57
NAT: network address translation
Lý do: Mng cc b ch dùng một địa ch IP đối vi h thng mng
bên ngoài:
§ Không cn thiết s dng c dãy địa ch t mt ISP: ch cn
một địa ch cho tt c các dch v
§ Có th thay đổi địa ch ca dch v trong mng cc b
không cn thông báo vi h thng mng bên ngoài.
§ Có th thay đổi ISP mà không cần thay đổi địa ch ca các
dch v bên trong mng cc b
§ H thng mng bên ngoài không nhìn thấy, cũng không biết
được địa ch rõ ràng ca các thiết b bên trong mng cc b
(tăng tính bảo mt)
Tng mng 4-58
lOMoARcPSD|36067889
NAT: network address translation
Cài đặt: Router NAT phi:
§ Các datagram đi ra: thay thế a ch IP ngun, s cng) ca mi
datagram đi ra ngoài thành (địa ch IP NAT, s cng mi)
. . . các client/server xa s dùng (địa ch IP NAT, s cng mi)
như là địa ch đích
§ Ghi nh (trong bng chuyển đổi NAT) mi cp chuyển đổi (địa ch IP
ngun, s cổng) thành (địa ch IP NAT, s cng mi)
§ Các datagram đi đến: thay thế a ch IP NAT, s cng mi) trong
trường địa ch đích của mọi datagram đi đến thành (địa ch IP
ngun, s cổng) tương ứng được lưu trong bảng NAT.
4-59
NAT: network address translation
đổi địa ch ngun 2: Router NAT thay
Địa ch phía WAN Địa ch phía LAN
Bng chuyển đi NAT
1:gi datagram ti host 10.0.0.1
ca datagram t 138.76.29.7, 5001 10.0.0.1, 3345 128.119.40.186, 80
10.0.0.1, 3345 thành …… …… 138.76.29.7, 5001,
cp nht bng S: 10.0.0.1, 3345
D: 128.119.40.186, 80
10.0.0.1
1
2S: 138.76.29.7, 5001D: 128.119.40.186, 80 10.0.0.4
10.0.0.2
138.76.29.7 S: 128.119.40.186, 80 D: 10.0.0.1, 3345 4
S: 128.119.40.186, 80
D: 138.76.29.7, 5001 3
10.0.0.3
4: Router NAT thay đi 3:
phn hồi đến địa ch địa ch đích của datagram đích:
138.76.29.7, 5001 t 138.76.29.7, 5001 thành
10.0.0.1, 3345
lOMoARcPSD|36067889
Tng mng 4-60
NAT: network address translation
v Trường s hiu cng gm 16-bit :
§ 60.000 kết nối đồng thi ch vi một địa ch phía LAN!
v NAT hin vẫn còn đang gây tranh cãi
§ Các router ch nên x lý đến tng 3
§ Vi phm tha thun end-to-end
• Các nhà thiết kế ng dng phải xem xét đến kh năng NAT, ví dụ
ng dng P2P
§ Vic thiếu địa ch nên được thay bng cách gii quyết là
dùng IPv6
4-61
Vấn đề đi qua NAT
v Client mun kết ni ti server
có địa ch 10.0.0.1
10.0.0.1
§ Địa ch 10.0.0.1 của server được đt
trong mng LAN
(client không th s dng địa ch
này là địa ch đích)
§ T bên ngoài, client ch nhìn thy
địa ch NAT là 138.76.29.7
v Gii pháp 1: Cấu hình tĩnh NAT để chuyn
tiếp các yêu cu kết nối đến ti cổng đã xác định ca
server
lOMoARcPSD|36067889
§ Ví d: (138.76.29.7, cng 2500) s luôn được chuyn tiếp
ti (10.0.0.1, cng 25000)
Tng mng 4-62
Vấn đề đi qua NAT
v Gii pháp 2: Dùng giao thc
Universal Plug and Play
10.0.0.1
(UPnP) Internet Gateway Device (IGD), cho
phép chuyn đổi NAT:
v Ghi nh địa ch IP công khai
(138.76.29.7) v Thêm/xóa các ánh x cng
(trong khong thi gian cho phép)
Ví d: Cu hình ánh x cng
NAT tĩnh tự động
4-63
Vấn đề đi qua NAT
v Gii pháp 3: chuyn tiếp (được dùng trong Skype)
§ Client NAT thiết lp kết nối để chuyn tiếp
§ Client bên ngoài kết nối để chuyn tiếp
§ Chuyn tiếp gia các gói tin ca các cầu để kết ni
lOMoARcPSD|36067889
Chương 4: Nội dung
4.1 Gii thiu
4.2 Các mng mch o
mng chuyn gói
4.3 Kiến trúc ca b định
tuyến
4.4 IP: Internet Protocol
§ Đnh dng gói tin §
Định địa ch IPv4
§ ICMP
§ IPv6
4.5 Các gii thuật định
tuyến
§ Link state
§ Distance vector
§ Hierarchical routing
4.6 Định tuyến trong mng
Internet
§ RIP
§ OSPF
§ BGP
4-65
ICMP: internet control message protocol
v Đưc s dng bi các host
lOMoARcPSD|36067889
v
v
& các router để truyn thông tin
tng mng
§ Báo cáo li: không tìm
đưc host, mng, cng,
giao thc
§ Phn hi yêu cầu/đáp ứng
(được dùng bi ping)
“Ở phía trên” trong tầng mng:
§ Các thông điệp ICMP được
mang trong các IP datagram Thông
đip ICMP: type, code và 8 byte
đầu tiên ca IP datagram mô t
nguyên nhân li
Type Code description (mô t)
0 0 echo reply (ping)
3 0 dest. network unreachable
3 1 dest host unreachable
3 2 dest protocol unreachable
3 3 dest port unreachable
3 6 dest network unknown
3 7 dest host unknown
4 0 source quench
(congestioncontrol - not used)
8 0 echo request (ping)
9 0 route advertisement
10 0 router discovery
11 0 TTL expired
12 0 bad IP header
Tng mng 4-66
Traceroute và ICMP
v
v
Ngun gi chui UDP segments ti
đích
§ Segment đầu tiên được thiết lp
TTL=1
§ Segment th hai TTL=2, ...
§ Không ging vi s hiu cng
Khi datagram th n ti router n:
§ Router b qua các datagram
§ Và gửi đến nguồn thông điệp
ICMP (type 11, code 0)
§ Thông điệp ICMP có cha tên ca
router & địa ch IP
v Khi thông điệp ICMP đến, ngun
tính toán các RTT
Điu kin dng:
v UDP segment cuối cùng đến được
host đích.
v Đích trả lại thông điệp ICMP
“port unreachable” (type 3, code
3) → cổng không có v Ngun dng
li
lOMoARcPSD|36067889
3 gói
3 gói
thăm dò
4-67
IPv6: Lý do
v Động lực thúc đẩy ban đầu: không gian địa ch 32-bit sp
đưc cp phát hết. v Động lc b sung:
§ Định dạng tiêu đề (header) giúp tăng tốc độ x lý/chuyn tiếp
§ Tiêu đề thay đổi giúp tạo điều kin cho QoS
Định dng IPv6 datagram:
§ Phần tiêu đề có chiu dài c định 40 byte
§ Không cho phép phân mnh gói tin
Tng mng 4-68
Định dng IPv6 datagram
v Priority (ưu tiên): xác định ưu tiên giữa các datagram trong lung
v Flow Label (nhãn lung): xác định các datagram trong cùng mt
“luồng”. v Next header: xác định giao thc tầng cao hơn cho dữ liu
ver
pri
flow label
payload len
next hdr
hop limit
source address
(128 bits)
destination address
(128 bits)
lOMoARcPSD|36067889
data
32 bits
4-69
Những thay đổi ca IPv6 so vi IPv4
v Checksum: b hoàn toàn, nhm gim thi gian x lý ti mi hop
v Options: được phép, nhưng nằm ngoài phần tiêu đề,
được xác định trong trường “Next Header”
v ICMPv6: phiên bn mi ca ICMP
§ Các loại thông điệp b sung, ví dụ: “Packet Too Big”
§ Các chức năng quản lý nhóm multicast
Tng mng 4-70
Chuyển đổi t IPv4 sang IPv6
v Không phi tt c các router đều có th đưc nâng cấp đồng thi
§ Không có ngày dành riêng cho vic chuyển đổi (flag days)
§ Mng s hoạt động như thế nào vi vic s dụng đồng thi các router
IPv4 và IPv6?
v Tunneling (đường hm): Payload của IPv6 datagram được mang trong IPv4
datagram gia các router IPv4
lOMoARcPSD|36067889
4-71
Tunneling
IPv6 IPv6 IPv6 IPv6
A B C D E F
Cách nhìn thc
(vt lý
):
IPv6 IPv6 IPv4 IPv4 IPv6 IPv6
Tng mng 4-72
Tunneling
IPv6 IPv6 IPv6 IPv6
lOMoARcPSD|36067889
A B C D E F
Cách nhìn thc
(vt lý):
src:B
dest: E
Flow:
X
Src: A
Dest: F
data
flow: X
src: A
dest: F
data
flow: X
src: A
dest: F
data
src:B
dest: E
Flow:
X
Src: A
Dest: F
data
A-ti-B:
IPv6
B-ti-C:
IPv6 trong IPv4
D-ti-E:
IPv6 trong IPv4
E-ti-F: IPv6
4-73
| 1/24

Preview text:

lOMoARcPSD| 36067889 Chương 4: Nội dung 4.1 Giới thiệu
4.5 Các giải thuật định tuyến
4.2 Các mạng mạch ảo và mạng § Link state chuyển gói § Distance vector
4.3 Kiến trúc của bộ định tuyến § Hierarchical routing 4.4 IP: Internet Protocol
4.6 Định tuyến trong mạng § Định dạng gói tin Internet § Định địa chỉ IPv4 § RIP § ICMP § OSPF § IPv6 § BGP Tầng mạng 4-32
Tầng mạng trong mạng Internet
Chức năng của tầng mạng tại bộ định tuyến và host: 4-33 lOMoARcPSD| 36067889 Định dạng IP datagram Phiên bản giao thức IP 32 bits Tổng chiều dài
Chiều dài phần head. type of datagram tiêu đề (byte) ver len service length (byte) “Loại” dữ liệu fragment Dùng cho việc 16-bit identifier flgs offset phân mảnh/tập Số hop tối đa còn
time to upper header hợp lại lại (được giảm đi live layer checksum tại mỗi router) 32 bit source IP address Giao thức tầng 32 bit destination IP address cao hơn thực hiện Ví dụ: trường phân phối payload đi options (nếu có) timestamp, ghi Bao nhiều byte cho phần
Dữ liệu nhận đường đi, tiêu đề gói tin? (độ dài thay đổi, cụ thể là danh v 20 byte trong TCP tùy thuộc vào TCP
sách các router v 20 byte trong IP hay là UDP segment)
đi qua. v = 40 byte + phần tiêu đề của tầng ứng dụng Tầng mạng 4-34
Phân mảnh và tập hợp lại gói tin IP
v Các liên kết mạng có MTU
(max.transfer size) – frame mức
liên kết lớn nhất có thể.
§ Các loại liên kết khác nhau Phân mảnh: sẽ có MTU khác nhau Vào: một datagram lớn
v IP datagram lớn sẽ được chia Ra: 3 datagram nhỏ hơn
(“phân mảnh”) bên trong mạng
§ Một datagram sẽ được chia thành một số datagram Tập hợp lại
§ Chúng sẽ được “tập hợp lại” tại đích cuối cùng
§ Các bit trong tiêu đề IP được
dùng để xác định thứ tự liên quan đến các mảnh lOMoARcPSD| 36067889 4-35
Phân mảnh và tập hợp lại gói tin IP length ID offset Ví dụ: =4000 =x =0 Tầng mạng 4-36 Chương 4: Nội dung 4.1 Giới thiệu
4.5 Các giải thuật định tuyến
4.2 Các mạng mạch ảo và § Link state mạng chuyển gói § Distance vector § Hierarchical routing
4.3 Kiến trúc của bộ định tuyến
4.6 Định tuyến trong mạng 4.4 IP: Internet Protocol Internet § Định dạng gói tin § § RIP Định địa chỉ IPv4 § OSPF § ICMP § BGP § IPv6 lOMoARcPSD| 36067889 4-37
Định địa chỉ IP: giới thiệu Tầng mạng 4-38 lOMoARcPSD| 36067889
Định địa chỉ IP: giới thiệu
Hiện tại: Không cần quan tâm WiFi 4-39 Subnet (Mạng con) Tầng mạng 4-40 lOMoARcPSD| 36067889 Subnet
Phương pháp v Để xác định các subnet,
tách mỗi giao diện từ host hoặc router, tạo thành các vùng mạng độc lập
v Mỗi mạng độc lập được gọi là một subnet
Mặt nạ mạng con (subnet mask): /24 4-41 Subnet 223.1.1.2 lOMoARcPSD| 36067889
Định địa chỉ IP: Phân lớp địa chỉ IPv4
Hạn chế: lãng phí không gian địa chỉ
§ Việc phân chia cứng thành các lớp (A, B, C, D, E) làm hạn chế việc sử
dụng toàn bộ không gian địa chỉ 4-43 Định địa chỉ IP: CIDR
CIDR: Classless Inter Domain Routing
§ Phần địa chỉ của subnet có độ dài tùy ý
§ Định dạng địa chỉ: a.b.c.d/x, với x là số bit trong phần subnet của địa chỉ Phần Phần subnet host
11001000 00010111 00010000 00000000 200.23.16.0/23 Tầng mạng 4-44 lOMoARcPSD| 36067889
Làm thế nào để có được một địa chỉ IP?
Hỏi: Làm thế nào để một host lấy được một địa chỉ IP?
v Mã hóa cứng trong một tệp bởi người quản trị hệ thống
§ Windows: control-panel->network->configuration->tcp/ip - >properties § UNIX: /etc/rc.config
v DHCP: Dynamic Host Configuration Protocol: tự động
lấy địa chỉ từ server § “plug-and-play” 4-45
DHCP: Dynamic Host Configuration Protocol
Mục đích: cho phép host có được địa chỉ IP một cách tự động từ server
mạng khi kết nối vào mạng
§ Có thể làm mới địa chỉ đang dùng
§ Cho phép dùng lại địa chỉ (chỉ giữ địa chỉ khi đang kết nối)
§ Hỗ trợ cho người dùng di động khi muốn kết nối vào mạng Khái quát DHCP:
§ Host gửi thông điệp quảng bá “DHCP discover” [optional]
§ DHCP server trả lời bằng thông điệp “DHCP offer” [optional]
§ Host yêu cầu địa chỉ IP bằng thông điệp “DHCP request” § DHCP
server gửi địa chỉ bằng thông điệp “DHCP ack” Tầng mạng 4-46 lOMoARcPSD| 36067889
Kịch bản DHCP client-server DHCP 4-47
Kịch bản DHCP client-server Tầng mạng 4-48 lOMoARcPSD| 36067889
DHCP: có nhiều địa chỉ IP hơn
DHCP có thể cho phép có nhiều địa chỉ IP hơn số địa
chỉ IP được phân bổ cho subnet:
§ Địa chỉ của router của hop đầu tiên cho client
§ Tên và địa chỉ IP của DNS sever
§ Mặt nạ mạng (chỉ ra phần host và phần mạng của một địa chỉ) 4-49 lOMoARcPSD| 36067889 DHCP: Ví dụ
v Laptop đang kết nối cần một địa chỉ IP, địa chỉ IP của router của hop đầu tiên, địa
chỉ của DNS server: dùng DHCP
v DHCP yêu cầu sẽ được đóng gói trong UDP, UDP được đóng gói trong IP, và IP
được đóng gói trong 802.1 Ethernet
v Gửi quảng bá khung Ethernet
(đích: FFFFFFFFFFFF) trên mạng LAN, được router đang chạy DHCP server nhận
Ethernet được cắt bỏ phần tiêu v
đề thành IP, IP được cắt bỏ phần
tiêu đề thành UDP, UDP được cắt
bỏ phần tiêu đề thành DHCP. Tầng mạng 4-50 DHCP: Ví dụ
v DCP server định dạng DHCP ACK bao
gồm địa chỉ IP của client, địa chỉ IP của router của hop đầu tiên cho client, tên
và địa chỉ IP của DNS server lOMoARcPSD| 36067889
v Sau khi được đóng gói ở DHCP server, frame được chuyển tiếp cho client, việc
cắt bỏ các phần tiêu đề để thành thông điệp
DHCP được thực hiện tại client v Lúc này, client biết được địa chỉ IP của nó, tên
và địa chỉ IP của DSN server, và địa chỉ IP của router của hop đầu tiên của nó. 4-51 DHCP: đầu ra trong Hardware type: Ethernet Đáp ứng Wireshark (LAN ở nhà) Hardware address length: 6 Hops: 0
Transaction ID: 0x6b3a11b7 Seconds elapsed: 0
Message type: Boot Request (1) Hardware type: Ethernet Bootp flags: 0x0000 (Unicast) Hardware address length: 6
Client IP address: 192.168.1.101 (192.168.1.101)
Your (client) IP address: 0.0.0.0 (0.0.0.0) Hops: 0 Yêu cầu
Next server IP address: 192.168.1.1 (192.168.1.1)
Relay agent IP address: 0.0.0.0 (0.0.0.0)
Transaction ID: 0x6b3a11b7 Seconds
Client MAC address: Wistron_23:68:8a (00:16:d3:23:68:8a) elapsed: 0 Bootp flags: 0x0000 (Unicast) Server host name not given
Client IP address: 0.0.0.0 (0.0.0.0) Boot file name not given
Your (client) IP address: 0.0.0.0 (0.0.0.0) Magic cookie: (OK)
Next server IP address: 0.0.0.0 (0.0.0.0)
Option: (t=53,l=1) DHCP Message Type = DHCP ACK
Relay agent IP address: 0.0.0.0 (0.0.0.0)
Option: (t=54,l=4) Server Identifier = 192.168.1.1
Option: (t=1,l=4) Subnet Mask = 255.255.255.0
Client MAC address: Wistron_23:68:8a (00:16:d3:23:68:8a) Server host name not given
Option: (t=3,l=4) Router = 192.168.1.1
Option: (6) Domain Name Server Boot file name not given
Length: 12; Value: 445747E2445749F244574092; Magic cookie: (OK) IP Address: 68.87.71.226;
Option: (t=53,l=1) DHCP Message Type = DHCP Request IP Address: 68.87.73.242;
Option: (61) Client identifier IP Address: 68.87.64.146
Length: 7; Value: 010016D323688A;
Option: (t=15,l=20) Domain Name = "hsd1.ma.comcast.net." Hardware type: Ethernet Message type: Boot Reply (2)
Client MAC address: Wistron_23:68:8a (00:16:d3:23:68:8a)
Option: (t=50,l=4) Requested IP Address = 192.168.1.101
Option: (t=12,l=5) Host Name = "nomad"
Option: (55) Parameter Request List
Length: 11; Value: 010F03062C2E2F1F21F92B
1 = Subnet Mask; 15 = Domain Name
3 = Router; 6 = Domain Name Server
44 = NetBIOS over TCP/IP Name Server …… Tầng mạng 4-52
Làm thế nào có được một địa chỉ IP? lOMoARcPSD| 36067889
Hỏi: Làm thế nào để mạng có được phần subnet của địa chỉ IP? Trả lời:
Lấy theo phần được phân bổ từ không gian địa chỉ của nhà cung cấp ISP.
Khối của ISP 11001000 00010111 00010000 00000000 200.23.16.0/20
Tổ chức 0 11001000 00010111 00010000 00000000 200.23.16.0/23
Tổ chức 1 11001000 00010111 00010010 00000000 200.23.18.0/23
Tổ chức 2 11001000 00010111 00010100 00000000 200.23.20.0/23 ... ….. …. ….
Tổ chức 7 11001000 00010111 00011110 00000000 200.23.30.0/23 4-53
Định địa chỉ phân cấp: tích hợp định tuyến
Định địa chỉ phân cấp cho phép quảng bá hiệu quả thông tin định tuyến: lOMoARcPSD| 36067889
Định địa chỉ phân cấp: định tuyến cụ thể hơn
ISPs-R-Us có nhiều cách định tuyến cụ thể hơn đến Tổ chức 1 Định địa chỉ IP...
Hỏi: Làm thế nào một ISP có thể lấy được khối địa chỉ?
Trả lời: ICANN: Internet Corporation for Assigned Names and Numbers http://www.icann.org/ § Phân bổ địa chỉ § Quản lý DNS
§ Gán các tên miền, giải quyết tranh chấp Tầng mạng 4-56 lOMoARcPSD| 36067889
NAT: network address translation (chuyển đổi địa chỉ mạng)
138.76.29.7 với các số hiệu cổng nguồn khác nhau 4-57
NAT: network address translation
Lý do: Mạng cục bộ chỉ dùng một địa chỉ IP đối với hệ thống mạng bên ngoài:
§ Không cần thiết sử dụng cả dãy địa chỉ từ một ISP: chỉ cần
một địa chỉ cho tất cả các dịch vụ
§ Có thể thay đổi địa chỉ của dịch vụ trong mạng cục bộ mà
không cần thông báo với hệ thống mạng bên ngoài.
§ Có thể thay đổi ISP mà không cần thay đổi địa chỉ của các
dịch vụ bên trong mạng cục bộ
§ Hệ thống mạng bên ngoài không nhìn thấy, cũng không biết
được địa chỉ rõ ràng của các thiết bị bên trong mạng cục bộ (tăng tính bảo mật) Tầng mạng 4-58 lOMoARcPSD| 36067889
NAT: network address translation
Cài đặt: Router NAT phải:
§ Các datagram đi ra: thay thế (địa chỉ IP nguồn, số cổng) của mỗi
datagram đi ra ngoài thành (địa chỉ IP NAT, số cổng mới)
. . . các client/server ở xa sẽ dùng (địa chỉ IP NAT, số cổng mới) như là địa chỉ đích
§ Ghi nhớ (trong bảng chuyển đổi NAT) mọi cặp chuyển đổi (địa chỉ IP
nguồn, số cổng) thành (địa chỉ IP NAT, số cổng mới)
§ Các datagram đi đến: thay thế (địa chỉ IP NAT, số cổng mới) trong
trường địa chỉ đích của mọi datagram đi đến thành (địa chỉ IP
nguồn, số cổng) tương ứng được lưu trong bảng NAT. 4-59
NAT: network address translation
đổi địa chỉ nguồn 2: Router NAT thay Địa chỉ phía WAN Địa chỉ phía LANBảng chuyển đổi NAT
1:gửi datagram tới host 10.0.0.1 của datagram từ
138.76.29.7, 5001 10.0.0.1, 3345 128.119.40.186, 80
10.0.0.1, 3345 thành …… …… 138.76.29.7, 5001, cập nhật bảng S: 10.0.0.1, 3345 D: 128.119.40.186, 80 10.0.0.1 1
2S: 138.76.29.7, 5001D: 128.119.40.186, 80 10.0.0.4 10.0.0.2 138.76.29.7
S: 128.119.40.186, 80 D: 10.0.0.1, 3345 4 S: 128.119.40.186, 80 D: 138.76.29.7, 5001 3 10.0.0.3 4: Router NAT thay đổi 3:
phản hồi đến địa chỉ địa chỉ đích của datagram đích: 138.76.29.7, 5001 từ 138.76.29.7, 5001 thành 10.0.0.1, 3345 lOMoARcPSD| 36067889 Tầng mạng 4-60
NAT: network address translation
v Trường số hiệu cổng gồm 16-bit :
§ 60.000 kết nối đồng thời chỉ với một địa chỉ phía LAN!
v NAT hiện vẫn còn đang gây tranh cãi
§ Các router chỉ nên xử lý đến tầng 3
§ Vi phạm thỏa thuận end-to-end
• Các nhà thiết kế ứng dụng phải xem xét đến khả năng NAT, ví dụ ứng dụng P2P
§ Việc thiếu địa chỉ nên được thay bằng cách giải quyết là dùng IPv6 4-61 Vấn đề đi qua NAT
v Client muốn kết nối tới server có địa chỉ 10.0.0.1 10.0.0.1
§ Địa chỉ 10.0.0.1 của server được đặt trong mạng LAN
(client không thể sử dụng địa chỉ này là địa chỉ đích)
§ Từ bên ngoài, client chỉ nhìn thấy
địa chỉ NAT là 138.76.29.7
v Giải pháp 1: Cấu hình tĩnh NAT để chuyển
tiếp các yêu cầu kết nối đến tới cổng đã xác định của server lOMoARcPSD| 36067889
§ Ví dụ: (138.76.29.7, cổng 2500) sẽ luôn được chuyển tiếp
tới (10.0.0.1, cổng 25000) Tầng mạng 4-62 Vấn đề đi qua NAT
v Giải pháp 2: Dùng giao thức Universal Plug and Play 10.0.0.1
(UPnP) Internet Gateway Device (IGD), cho phép chuyển đổi NAT:
v Ghi nhớ địa chỉ IP công khai
(138.76.29.7) v Thêm/xóa các ánh xạ cổng
(trong khoảng thời gian cho phép)
Ví dụ: Cấu hình ánh xạ cổng NAT tĩnh tự động 4-63 Vấn đề đi qua NAT
v Giải pháp 3: chuyển tiếp (được dùng trong Skype)
§ Client NAT thiết lập kết nối để chuyển tiếp
§ Client bên ngoài kết nối để chuyển tiếp
§ Chuyển tiếp giữa các gói tin của các cầu để kết nối lOMoARcPSD| 36067889 Chương 4: Nội dung 4.1 Giới thiệu § Link state
4.2 Các mạng mạch ảo và § Distance vector mạng chuyển gói § Hierarchical routing
4.3 Kiến trúc của bộ định
4.6 Định tuyến trong mạng tuyến Internet 4.4 IP: Internet Protocol § RIP § Định dạng gói tin § § OSPF Định địa chỉ IPv4 § BGP § ICMP § IPv6
4.5 Các giải thuật định 4-65 tuyến
ICMP: internet control message protocol
v Được sử dụng bởi các host lOMoARcPSD| 36067889
& các router để truyền thông tin Type Code description (mô tả) tầng mạng 0 0 echo reply (ping)
§ Báo cáo lỗi: không tìm 3 0 dest. network unreachable
được host, mạng, cổng, 3 1 dest host unreachable giao thức 3 2 dest protocol unreachable
§ Phản hồi yêu cầu/đáp ứng 3 3 dest port unreachable (được dùng bởi ping) 3 6 dest network unknown
“Ở phía trên” trong tầng mạng: 3 7 dest host unknown 4 0 source quench
§ Các thông điệp ICMP được
(congestioncontrol - not used)
mang trong các IP datagram Thông 8 0 echo request (ping) v
điệp ICMP: type, code và 8 byte 9 0 route advertisement
đầu tiên của IP datagram mô tả 10 0 router discovery nguyên nhân lỗi 11 0 TTL expired 12 0 bad IP header v Tầng mạng 4-66 Traceroute và ICMP v
Nguồn gửi chuỗi UDP segments tới
v Khi thông điệp ICMP đến, nguồn đích tính toán các RTT
§ Segment đầu tiên được thiết lập TTL=1 Điều kiện dừng:
§ Segment thứ hai TTL=2, ...
v UDP segment cuối cùng đến được
§ Không giống với số hiệu cổng host đích.
Khi datagram thứ n tới router n: v
v Đích trả lại thông điệp ICMP
§ Router bỏ qua các datagram
“port unreachable” (type 3, code
§ Và gửi đến nguồn thông điệp
3) → cổng không có v Nguồn dừng ICMP (type 11, code 0) lại
§ Thông điệp ICMP có chứa tên của router & địa chỉ IP lOMoARcPSD| 36067889 3 gói 3 gói thăm dò 4-67 IPv6: Lý do
v Động lực thúc đẩy ban đầu: không gian địa chỉ 32-bit sắp
được cấp phát hết. v Động lực bổ sung:
§ Định dạng tiêu đề (header) giúp tăng tốc độ xử lý/chuyển tiếp
§ Tiêu đề thay đổi giúp tạo điều kiện cho QoS Định dạng IPv6 datagram:
§ Phần tiêu đề có chiều dài cố định 40 byte
§ Không cho phép phân mảnh gói tin Tầng mạng 4-68 Định dạng IPv6 datagram
v Priority (ưu tiên): xác định ưu tiên giữa các datagram trong luồng
v Flow Label (nhãn luồng): xác định các datagram trong cùng một
“luồng”. v Next header: xác định giao thức tầng cao hơn cho dữ liệu ver pri flow label payload len next hdr hop limit source address (128 bits) destination address (128 bits) lOMoARcPSD| 36067889 data 32 bits 4-69
Những thay đổi của IPv6 so với IPv4
v Checksum: bỏ hoàn toàn, nhằm giảm thời gian xử lý tại mỗi hop
v Options: được phép, nhưng nằm ngoài phần tiêu đề,
được xác định trong trường “Next Header”
v ICMPv6: phiên bản mới của ICMP
§ Các loại thông điệp bổ sung, ví dụ: “Packet Too Big”
§ Các chức năng quản lý nhóm multicast Tầng mạng 4-70
Chuyển đổi từ IPv4 sang IPv6
v Không phải tất cả các router đều có thể được nâng cấp đồng thời
§ Không có ngày dành riêng cho việc chuyển đổi (flag days)
§ Mạng sẽ hoạt động như thế nào với việc sử dụng đồng thời các router IPv4 và IPv6?
v Tunneling (đường hầm): Payload của IPv6 datagram được mang trong IPv4
datagram giữa các router IPv4 lOMoARcPSD| 36067889 4-71 Tunneling IPv6 IPv6 IPv6 IPv6 A B C D E F Cách nhìn thực ): (vật lý IPv6 IPv6 IPv4 IPv4 IPv6 IPv6 Tầng mạng 4-72 Tunneling IPv6 IPv6 IPv6 IPv6 lOMoARcPSD| 36067889 A B C D E F Cách nhìn thực (vật lý): flow: X src:B flow: X src:B src: A dest: E src: A dest: F dest: E dest: F Flow: Flow: X X data Src: A data Src: A Dest: F Dest: F data data A-tới-B: B-tới-C: D-tới-E: E-tới-F: IPv6 IPv6 IPv6 trong IPv4 IPv6 trong IPv4 4-73