win 2k3 sp3

Bài 3

ĐỊA CHỈ IP

Tóm tắt

Lý thuyết 5 tiết - Thực hành 5 tiết

Mục tiêu Các mục chính Bài tập bắt Bài tập làm

buộc thêm

Kết thúc bài học này cung

cấp học viên kiến thức về

cấu trúc của một địa chỉ

IP, các lớp địa chỉ, kỹ

thuật chia mạng con, kỹ

thuật NAT...

I. Tổng quan về địa chỉ IP.

II. Giới thiệu các lớp địa chỉ.

III. Các ví dụ khi tính toán trên

địa chỉ mạng.

Dựa vào bài tập

môn mạng máy

tính.

Dựa vào bài

tập môn mạng

máy tính.

Download tài liệu này tại diễn đàn quản trị mạng và quản trị hệ thống | http://www.adminviet.net

57

I. TỔNG QUAN VỀ ĐỊA CHỈ IP

Là địa chỉ có cấu trúc, được chia làm hai hoặc ba phần là: network_id&host_id hoặc

network_id&subnet_id&host_id.

Là một con số có kích thước 32 bit. Khi trình bày, người ta chia con số 32 bit này thành bốn phần, mỗi

phần có kích thước 8 bit, gọi là octet hoặc byte. Có các cách trình bày sau:

- Ký pháp thập phân có dấu chấm (dotted-decimal notation). Ví dụ: 172.16.30.56.

- Ký pháp nhị phân. Ví dụ: 10101100 00010000 00011110 00111000.

- Ký pháp thập lục phân. Ví dụ: AC 10 1E 38.

Không gian địa chỉ IP (gồm 232 địa chỉ) được chia thành nhiều lớp (class) để dễ quản lý. Đó là các lớp:

A, B, C, D và E; trong đó các lớp A, B và C được triển khai để đặt cho các host trên mạng Internet; lớp

D dùng cho các nhóm multicast; còn lớp E phục vụ cho mục đích nghiên cứu.

Địa chỉ IP còn được gọi là địa chỉ logical, trong khi địa chỉ MAC còn gọi là địa chỉ vật lý (hay địa chỉ

physical).

II. MỘT SỐ KHÁI NIỆM VÀ THUẬT NGỮ LIÊN QUAN.

Network_id: là giá trị để xác định đường mạng. Trong số 32 bit dùng địa chỉ IP, sẽ có một số bit đầu

tiên dùng để xác định network_id. Giá trị của các bit này được dùng để xác định đường mạng.

Host_id: là giá trị để xác định host trong đường mạng. Trong số 32 bit dùng làm địa chỉ IP, sẽ có một

số bit cuối cùng dùng để xác định host_id. Host_id chính là giá trị của các bit này.

Địa chỉ host: là địa chỉ IP, có thể dùng để đặt cho các interface của các host. Hai host nằm thuộc cùng

một mạng sẽ có network_id giống nhau và host_id khác nhau.

Mạng (network): một nhóm nhiều host kết nối trực tiếp với nhau. Giữa hai host bất kỳ không bị phân

cách bởi một thiết bị layer 3. Giữa mạng này với mạng khác phải kết nối với nhau bằng thiết bị layer 3.

Địa chỉ mạng (network address): là địa chỉ IP dùng để đặt cho các mạng. Địa chỉ này không thể dùng

để đặt cho một interface. Phần host_id của địa chỉ chỉ chứa các bit 0. Ví dụ 172.29.0.0 là một địa chỉ

mạng.

Mạng con (subnet network): là mạng có được khi một địa chỉ mạng (thuộc lớp A, B, C) được phân

chia nhỏ hơn (để tận dụng số địa chỉ mạng được cấp phát). Địa chỉ mạng con được xác định dựa vào

địa chỉ IP và mặt nạ mạng con (subnet mask) đi kèm (sẽ đề cập rõ hơn ở phần sau).

Địa chỉ broadcast: là địa chỉ IP được dùng để đại diện cho tất cả các host trong mạng. Phần host_id

chỉ chứa các bit 1. Địa chỉ này cũng không thể dùng để đặt cho một host được. Ví dụ 172.29.255.255

là một địa chỉ broadcast.

Các phép toán làm việc trên bit:

Download tài liệu này tại diễn đàn quản trị mạng và quản trị hệ thống | http://www.adminviet.net

58

Phép AND Phép OR

A B A and B A B A or B

1 1 1

1 0 0

0 1 0

0 0 0

1 1 1

1 0 1

0 1 1

0 0 0

Ví dụ sau minh hoạ phép AND giữa địa chỉ 172.29.14.10 và mask 255.255.0.0

172.29.14.10 = 10101100000111010000111000001010AND

255.255.0.0

=

11111111111111110000000000000000

172.29.0.0

=

10101100000111010000000000000000

Mặt nạ mạng (network mask): là một con số dài 32 bit, là phương tiện giúp máy xác định được địa chỉ

mạng của một địa chỉ IP (bằng cách AND giữa địa chỉ IP với mặt nạ mạng) để phục vụ cho công việc

routing. Mặt nạ mạng cũng cho biết số bit nằm trong phần host_id. Được xây dựng theo cách: bật các

bit tương ứng với phần network_id (chuyển thành bit 1) và tắt các bit tương ứng với phần host_id

(chuyển thành bit 0).

Mặt nạ mặc định của lớp A: sử dụng cho các địa chỉ lớp A khi không chia mạng con, mặt nạ có giá trị

255.0.0.0.

Mặt nạ mặc định của lớp B: sử dụng cho các địa chỉ lớp B khi không chia mạng con, mặt nạ có giá trị

255.255.0.0.

Mặt nạ mặc định của lớp C: sử dụng cho các địa chỉ lớp C khi không chia mạng con, mặt nạ có giá trị

255.255.255.0.

III. GIỚI THIỆU CÁC LỚP ĐỊA CHỈ.

III.1. Lớp A.

Dành một byte cho phần network_id và ba byte cho phần host_id.

network_id host_id

Để nhận diện ra lớp A, bit đầu tiên của byte đầu tiên phải là bit 0. Dưới dạng nhị phân, byte này có

dạng 0xxxxxxx. Vì vậy, những địa chỉ IP có byte đầu tiên nằm trong khoảng từ 0 (00000000) đến 127

(01111111) sẽ thuộc lớp A. Ví dụ địa chỉ 50.14.32.8 là một địa chỉ lớp A (50 < 127).

Byte đầu tiên này cũng chính là network_id, trừ đi bit đầu tiên làm ID nhận dạng lớp A, còn lại bảy bit

để đánh thứ tự các mạng, ta được 128 (27) mạng lớp A khác nhau. Bỏ đi hai trường hợp đặc biệt là 0

và 127. Kết quả là lớp A chỉ còn 126 (27-2) địa chỉ mạng, 1.0.0.0 đến 126.0.0.0.

Download tài liệu này tại diễn đàn quản trị mạng và quản trị hệ thống | http://www.adminviet.net

59

Phần host_id chiếm 24 bit, tức có thể đặt địa chỉ cho 16.777.216 (224) host khác nhau trong mỗi mạng.

Bỏ đi một địa chỉ mạng (phần host_id chứa toàn các bit 0) và một địa chỉ broadcast (phần host_id

chứa toàn các bit 1) như vậy có tất cả 16.777.214 (224-2) host khác nhau trong mỗi mạng lớp A. Ví dụ,

đối với mạng 10.0.0.0 thì những giá trị host hợp lệ là 10.0.0.1 đến 10.255.255.254.

moãi maïng chöùa16777214 host

network network network

126 maïng khaùc nhau

Hình 3.1 - Mô tả các mạng lớp A kết nối với nhau

III.2. Lớp B.

Dành hai byte cho mỗi phần network_id và host_id.

network_id host_id

Dấu hiệu để nhận dạng địa chỉ lớp B là byte đầu tiên luôn bắt đầu bằng hai bit 10. Dưới dạng nhị phân,

octet có dạng 10xxxxxx. Vì vậy những địa chỉ nằm trong khoảng từ 128 (10000000) đến 191

(10111111) sẽ thuộc về lớp B. Ví dụ 172.29.10.1 là một địa chỉ lớp B (128 < 172 < 191).

Phần network_id chiếm 16 bit bỏ đi 2 bit làm ID cho lớp, còn lại 14 bit cho phép ta đánh thứ tự 16.384

(214) mạng khác nhau (128.0.0.0 đến 191.255.0.0)

Phần host_id dài 16 bit hay có 65536 (216) giá trị khác nhau. Trừ 2 trường hợp đặc biệt còn lại 65534

host trong một mạng lớp B. Ví dụ, đối với mạng 172.29.0.0 thì các địa chỉ host hợp lệ là từ 172.29.0.1

đến 172.29.255.254.

moãi maïng chöùa 65534 host

network network network

16384 maïng khaùc nhau

Hình 3.2 - Mô tả các mạng lớp B kết nối với nhau

III.3. Lớp C.

Dành ba byte cho phần network_id và một byte cho phần host_id.

network_id host_id

Byte đầu tiên luôn bắt đầu bằng ba bit 110 và dạng nhị phân của octet này là 110xxxxx. Như vậy

những địa chỉ nằm trong khoảng từ 192 (11000000) đến 223 (11011111) sẽ thuộc về lớp C. Ví dụ một

địa chỉ lớp C là 203.162.41.235 (192 < 203 < 223).

Phần network_id dùng ba byte hay 24 bit, trừ đi 3 bit làm ID của lớp, còn lại 21 bit hay 2.097.152 (221)

Download tài liệu này tại diễn đàn quản trị mạng và quản trị hệ thống | http://www.adminviet.net

60

địa chỉ mạng (từ 192.0.0.0 đến 223.255.255.0).

Download tài liệu này tại diễn đàn quản trị mạng và quản trị hệ thống | http://www.adminviet.net

61

Phần host_id dài một byte cho 256 (28) giá trị khác nhau. Trừ đi hai trường hợp đặc biệt ta còn 254

host khác nhau trong một mạng lớp C. Ví dụ, đối với mạng 203.162.41.0, các địa chỉ host hợp lệ là từ

203.162.41.1 đến 203.162.41.254.

III.4. Lớp D và E.

Các địa chỉ có byte đầu tiên nằm trong khoảng 224 đến 255 là các địa chỉ thuộc lớp D hoặc E. Do các

lớp này không phục vụ cho việc đánh địa chỉ các host nên không trình bày ở đây.

III.5. Bảng tổng kết.

Lớp A Lớp B Lớp C

Giá trị của byte

đầu tiên 0 - 127 128 - 191 192 - 223

Số byte phần

Network_id 1 2 3

Số byte phần

Host_id 3 2 1

Network mask 255.0.0.0 255.255.0.0 255.255.255.0

Broadcast XX.255.255.255 XX.XX.255.255 XX.XX.XX.255

Network Address XX.0.0.0 XX.XX.0.0 XX.XX.XX.0

Số đường mạng 128 16.384 2.097.152

Số host trên mỗi

đường mạng 16.777.214 65.534 254

* Ghi chú: XX là số bất kỳ trong miền cho phép.

III.6. Ví dụ cách triển khai đặt địa chỉ IP cho một hệ thống mạng.

Maïng 192.168.1.0

Maïng 192.168.2.0

192.168.1.5 192.168.1.6 Maïng 192.168.3.0

192.168.3.2

192.168.2.5 192.168.2.6

192.168.1.1 192.168.2.1

192.168.3.1

192.168.1.7 192.168.1.8 192.168.2.7 192.168.2.8

Hình 3.3 - Minh họa một hệ thống mạng

III.7. Chia mạng con (subnetting).

Giả sử ta phải tiến hành đặt địa chỉ IP cho hệ thống có cấu trúc như sau:

Download tài liệu này tại diễn đàn quản trị mạng và quản trị hệ thống | http://www.adminviet.net

62

Hình 3.4 - Hệ thống mạng có 6 đường mạng

Theo hình trên, ta bắt buộc phải dùng đến tất cả là sáu đường mạng riêng biệt để đặt cho hệ thống

mạng của mình, mặc dù trong mỗi mạng chỉ dùng đến vài địa chỉ trong tổng số 65534 địa chỉ hợp lệ, đó

là một sự phí phạm to lớn. Thay vì vậy, khi sử dụng kỹ thuật chia mạng con, ta chỉ cần sử dụng một

đường mạng 150.150.0.0 và chia đường mạng này thành sáu mạng con theo hình bên dưới:

Hình 3.5 - Hệ thống mạng có 6 đường mạng (sau khi chia Subnet)

Rõ ràng khi tiến hành cấp phát địa chỉ cho các hệ thống mạng lớn, người ta phải sử dụng kỹ thuật chia

mạng con trong tình hình địa chỉ IP ngày càng khan hiếm. Ví dụ trong hình trên hoàn toàn chưa phải là

chiến lược chia mạng con tối ưu. Thật sự người ta còn có thể chia mạng con nhỏ hơn nữa, đến một

mức độ không bỏ phí một địa chỉ IP nào khác.

Download tài liệu này tại diễn đàn quản trị mạng và quản trị hệ thống | http://www.adminviet.net

63

Xét về khía cạnh kỹ thuật, chia mạng con chính là việc mượn một số bit trong phần host_id ban đầu

để đặt cho các mạng con. Lúc này, cấu trúc của địa chỉ IP gồm có ba phần: network_id, subnet_id và

host_id. Số bit dùng cho phần subnet_id bao nhiêu là tuỳ thuộc vào chiến lược chia mạng con của

người quản trị, có thể là một con số tròn byte (8 bit) hoặc một số bit lẻ vẫn được. Tuy nhiên subnet_id

không thể chiếm trọn số bit có trong host_id ban đầu, cụ thể là (số bit làm subnet_id) ≤ (số bit làm

host_id)-2.

Hình 3.6 - Số lượng Subnet tối đa được phép

Số lượng host trong mỗi mạng con được xác định bằng số bit trong phần host_id; 2x - 2 là số địa chỉ

hợp lệ có thể đặt cho các host trong mạng con. Tương tự, số bit trong phần subnet_id xác định số

lượng mạng con. Giả sử số bit là y 2y - 2 là số lượng mạng con có được (trường hợp đặc biệt thì có

thể sử dụng được 2y mạng con).

Một số khái niệm mới:

- Địa chỉ mạng con (địa chỉ đường mạng): bao gồm cả phần network_id và subnet_id, phần

host_id chỉ chứa các bit 0. Theo hình bên trên thì ta có các địa chỉ mạng con sau: 150.150.1.0,

150.150.2.0, ...

- Địa chỉ broadcast trong một mạng con: Giữ nguyên các bit dùng làm địa chỉ mạng con, đồng thời

bật tất cả các bit trong phần host_id lên 1. Ví dụ địa chỉ broadcast của mạng con 150.150.1.0 là

150.150.1.255.

- Mặt nạ mạng con (subnet mask): giúp máy tính xác định được địa chỉ mạng con của một địa chỉ

host. Để xây dựng mặt nạ mạng con cho một hệ thống địa chỉ, ta bật các bit trong phần

network_id và subnet_id lên 1, tắt các bit trong phần host_id thành 0. Ví dụ mặt nạ mạng con

dùng cho hệ thống mạng trong hình trên là 255.255.255.0.

Vấn đề đặt ra là khi xác định được một địa chỉ IP (ví dụ 172.29.8.230) ta không thể biết được host này

nằm trong mạng nào (không thể biết mạng này có chia mạng con hay không, và nếu có chia thì dùng

bao nhiêu bit để chia). Chính vì vậy khi ghi nhận địa chỉ IP của một host, ta cũng phải cho biết subnet

mask là bao nhiêu (subnet mask có thể là giá trị thập phân, cũng có thể là số bit dùng làm subnet

mask).

Download tài liệu này tại diễn đàn quản trị mạng và quản trị hệ thống | http://www.adminviet.net

64

+ Ví dụ địa chỉ IP ghi theo giá trị thập phân của subnet mask là 172.29.8.230/255.255.255.0

+ Hoặc địa chỉ IP ghi theo số bit dùng làm subnet mask là 172.29.8.230/24.

III.8. Địa chỉ riêng (private address) và cơ chế chuyển đổi địa chỉ mạng

(Network Address Translation - NAT)

Tất cả các IP host khi kết nối vào mạng Internet đều phải có một địa chỉ IP do tổ chức IANA (Internet

Assigned Numbers Authority) cấp phát - gọi là địa chỉ hợp lệ (hay là được đăng ký). Tuy nhiên số

lượng host kết nối vào mạng ngày càng gia tăng dẫn đến tình trạng khan hiếm địa chỉ IP. Một giải pháp

đưa ra là sử dụng cơ chế NAT kèm theo là RFC 1918 qui định danh sách địa chỉ riêng. Các địa chỉ này

sẽ không được IANA cấp phát - hay còn gọi là địa chỉ không hợp lệ. Bảng sau liệt kê danh sách các địa

chỉ này:

Nhóm địa chỉ Lớp Số lượng mạng

10.0.0.0 đến 10.255.255.255 A 1

172.16.0.0 đến 172.31.255.255 B 16

192.168.0.0 đến

192.168.255.255 C 256

III.9. Cơ chế NAT

NAT được sử dụng trong thực tế là tại một thời điểm, tất cả các host trong một mạng LAN thường

không truy xuất vào Internet đồng thời, chính vì vậy ta không cần phải sử dụng một số lượng tương

ứng địa chỉ IP hợp lệ. NAT cũng được sử dụng khi nhà cung cấp dịch vụ Internet (ISP) cung cấp số

lượng địa chỉ IP hợp lệ ít hơn so với số máy cần truy cập Internet. NAT được sử dụng trên các router

đóng vai trò là gateway cho một mạng. Các host bên trong mạng LAN sẽ sử dụng một lớp địa chỉ riêng

thích hợp. Còn danh sách các địa chỉ IP hợp lệ sẽ được cấu hình trên Router NAT. Tất cả các packet

của các host bên trong mạng LAN khi gửi đến một host trên Internet đều được router NAT phân tích và

chuyển đổi các địa chỉ riêng có trong packet thành một địa chỉ hợp lệ trong danh sách rồi mới chuyển

đến host đích nằm trên mạng Internet. Sau đó nếu có một packet gửi cho một host bên trong mạng

LAN thì Router NAT cũng chuyển đổi địa chỉ đích thành địa chỉ riêng của host đó rồi mới chuyển cho

host ở bên trong mạng LAN.

Một cơ chế mở rộng của NAT là PAT (Port Address Translation) cũng dùng cho mục đích tương

ứng. Lúc này thay vì chỉ chuyển đổi địa chỉ IP thì cả địa chỉ cổng dịch vụ (port) cũng được chuyển đổi

(do Router NAT quyết định).

IV. MỘT SỐ CÂU HỎI THƯỜNG ĐẶT RA KHI LÀM VIỆC VỚI ĐỊA

CHỈ IP.

IV.1. Ví dụ 1.

Người ta ghi nhận được địa chỉ IP của một host như sau: 172.29.32.30/255.255.240.0, hãy trả lời

các câu hỏi sau:

- Hãy cho biết mạng chứa host đó có chia mạng con hay không? Nếu có thì cho biết có bao nhiêu

mạng con tương tự như vậy? Và có bao nhiêu host trong mỗi mạng con?

Download tài liệu này tại diễn đàn quản trị mạng và quản trị hệ thống | http://www.adminviet.net

65

- Hãy cho biết host nằm trong mạng có địa chỉ là gì?

Download tài liệu này tại diễn đàn quản trị mạng và quản trị hệ thống | http://www.adminviet.net

66

- Hãy cho biết địa chỉ broadcast dùng cho mạng đó?

- Liệt kê danh sách các địa chỉ host nằm chung mạng con với host trên.

Hướng dẫn trả lời:

Hãy cho biết mạng chứa host đó có chia mạng con hay không? Nếu có thì cho biết có bao nhiêu

mạng con tương tự như vậy? Và có bao nhiêu host trong mỗi mạng con?

1. Xác định lớp địa chỉ xác định mặt nạ mặc định của lớp, so khớp với mặt nạ của địa chỉ kết

luận có chia mạng con hay không?

2. Xác định số bit trong subnet_id = x số mạng con = 2x-2.

3. Xác định số bit trong host_id = y số host trong mạng con = 2y-2.

Như vậy, Host này có địa chỉ IP thuộc lớp B, trong khi subnet mask của Host lại là

255.255.240.0 (khác với subnet mask mặc định của lớp B) nên host trên nằm trong mạng có

chia mạng con.

Subnet mask mặc

định của lớp B 255.255.0.0 = 11111111 11111111 00000000 00000000

Subnet mask của =

Host 255.255.240.0

11111111 11111111 11110000 00000000

So sánh số bit dùng làm subnet mask của Host với số bit dùng làm subnet mask mặc định của

lớp B, sẽ có được số bit dùng làm subnet_id là 4 bit. Nên số bit dùng làm host_id sẽ là (16-4) = 12

bit.

Số mạng con tương tự là 14.

Số host trong mỗi mạng con là 4094.

Hãy cho biết host nằm trong mạng có địa chỉ là gì?

1. Duyệt mặt nạ mạng con và địa chỉ IP theo từng byte tương ứng, từ trái qua phải.

+ Byte nào của subnet mask mang giá trị 255 thì ghi lại byte tương ứng của địa chỉ IP.

+ Byte nào của subnet mask là 0 thì ghi lại byte tương ứng ở địa chỉ IP là 0.

+ Nếu giá trị của byte nào ở subnet mask khác 255 và 0 thì để trống byte tương ứng ở địa chỉ

IP và gọi byte này là số khó chịu.

2. Tìm số cơ sở = 256-số khó chịu.

3. Tìm bội số lớn nhất của số cơ sở nhưng bội số này phải bé hơn hoặc bằng số tương ứng trong địa

chỉ IP và ghi lại số này.

172.29._ .0. Số khó chịu = 240.

Số cơ sở = 256 - 240 = 16.

Bội số của 16 lớn nhất nhưng bé hơn hoặc bằng 32 là 32

địa chỉ đường mạng cần tìm là 172.29.32.0.

Hãy cho biết địa chỉ broadcast dùng cho mạng đó?

1. Duyệt mặt nạ mạng con và địa chỉ IP theo từng byte tương ứng, từ trái qua phải.

Download tài liệu này tại diễn đàn quản trị mạng và quản trị hệ thống | http://www.adminviet.net

67

+ Byte nào của subnet mask mang giá trị 255 thì ghi lại byte tương ứng của địa chỉ IP,

+ Byte nào của subnet mask là 0 thì ghi vào byte tương ứng của địa chỉ IP là 255

+ Nếu byte của subnet mask có giá trị khác 255 và 0 thì để trống byte tương ứng ở địa chỉ IP

và gọi byte này là số khó chịu.

2. Tìm số cơ sở = 256 - số khó chịu.

3. Tìm bội số nhỏ nhất của số cơ sở nhưng bội số này phải lớn hơn số tương ứng trong địa chỉ IP,

đem số này trừ đi 1 thì được kết quả.

172.29._ .255. Số khó chịu = 240.

Số cơ sở = 256 - 240 = 16.

Bội số nhỏ nhất của 16 nhưng lớn hơn 32 là 48. 48 - 1 =47

Địa chỉ broadcast cần tìm là 172.29.47.255.

Liệt kê danh sách các địa chỉ host nằm chung mạng con với host trên?

Các địa chỉ host hợp lệ có thể đặt cho các host nằm chung mạng con với host ở trên là: các địa chỉ sau

địa chỉ mạng và trước địa chỉ broadcast.

Các địa chỉ từ 172.29.32.1 đến 172.29.47.254.

IV.2. Ví dụ 2.

Cho host có địa chỉ 10.8.100.49/19. Hãy trả lời các câu hỏi trên cho host này.

- Subnet mask là 19 bit hay 255.255.224.0 có chia mạng con. Số bit trong subnet_id là 11 số

subnet = 211-2 = 2046. Số bit trong host_id là 13 số host hợp lệ = 213 - 2 = 8190.

- Địa chỉ mạng: 10.8. .0. Số khó chịu = 224 Số cơ sở = 256 - 224 = 32. Bội số lớn nhất của

32 nhưng bé hơn 100 là 96 địa chỉ mạng là 10.8.96.0.

- Địa chỉ broadcast: 10.8.127.255.

- Các địa chỉ hợp lệ của mạng con: 10.8.96.1 đến 10.8.127.254

Download tài liệu này tại diễn đàn quản trị mạng và quản trị hệ thống | http://www.adminviet.net

68

Bạn đang đọc truyện trên: AzTruyen.Top

Tags: #win