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

Một phần của tài liệu TÀI LIỆU HỌC TẬP MẠNG MÁY TÍNH (Trang 43 - 52)

Sơ đồ địa chỉ hoá để định danh các trạm (host) trong liên mạng được gọi là địa chỉ IP. Mỗi địa chỉ IP có độ dài 32 bits (đối với IP4) được tách thành 4 vùng (mỗi vùng 1 byte), có thể được biểu thị dưới dạng thập phân, bát phân, thập lục phân hoặc nhị phân. Cách viết phổ biến nhất là dùng ký pháp thập phân có dấu chấm để tách giữa các vùng.

Mục đích của địa chỉ IP là để định danh duy nhất cho một host bất kỳ trên liên mạng.

Có hai cách cấp phát địa chỉ IP, nó phụ thuộc vào cách ta kết nối mạng.

Nếu mạng của ta kết nối vào mạng Internet, địa mạng chỉ được xác nhận bởi NIC (Network Information Center). Nếu mạng của ta không kết nối Internet, người quản trị mạng sẽ cấp phát địa chỉ IP cho mạng này. Còn các host ID được cấp phát bởi người quản trị mạng.

3.1. Ipv4

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

networ_id&host_di 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).

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.

Đị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.

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.

Các lớp địa chỉ IP

Lớp A: Dành một byte cho phần network_id và ba byte cho phần 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

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.

Lớp B: Dành hai byte cho mỗi phần network_id và 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.

Lớp C: Dành ba byte cho phần network_id và một byte cho phần host_id.

Netid Hostid

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) địa chỉ mạng (từ 192.0.0.0 đến 223.255.255.0).

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

3.2. Ipv6

3.2.1 Mục tiêu trong thiết kế Ipv6

Không gian địa chỉ lớn hơn và dễ dàng quản lý không gian địa chỉ.

Hỗ trợ kết nối đầu cuối-đầu cuối và loại bỏ hoàn toàn công nghệ NAT

Quản trị TCP/IP dễ dàng hơn: DHCP được sử dụng trong IPv4 nhằm giảm cấu hình thủ công TCP/IP cho host. IPv6 được thiết kế với khả năng tự động cấu hình mà không cần sử dụng máy chủ DHCP, hỗ trợ hơn nữa trong việc giảm cấu hình thủ công.

Cấu trúc định tuyến tốt hơn: Định tuyến IPv6 được thiết kế hoàn toàn phân cấp.

Hỗ trợ tốt hơn Multicast: Multicast là một tùy chọn của địa chỉ IPv4, tuy nhiên khả năng hỗ trợ và tính phổ dụng chưa cao.

Hỗ trợ bảo mật tốt hơn: IPv4 được thiết kế tại thời điểm chỉ có các mạng nhỏ, biết rõ nhau kết nối với nhau. Do vậy bảo mật chưa phải là một vấn đề được quan tâm. Song hiện nay, bảo mật mạng internet trở thành một vấn đề rất lớn, là mối quan tâm hàng đầu.

Hỗ trợ tốt hơn cho di động: Thời điểm IPv4 được thiết kế, chưa tồn tại khái niệm về thiết bị IP di động. Trong thế hệ mạng mới, dạng thiết bị này ngày càng phát triển, đòi hỏi cấu trúc giao thức Internet có sự hỗ trợ tốt hơn.

3.2.2 Biểu diễn địa chỉ Ipv6

Địa chỉ IPv6 có chiều dài gấp 4 lần chiều dài địa chỉ IPv4, gồm 128 bít.

Người ta không biểu diễn địa chỉ IPv6 dưới dạng số thập phân. Địa chỉ IPv6 được viết hoặc theo 128 bít nhị phân, hoặc thành một dãy chữ số hexa decimal. Tuy nhiên, nếu viết một dãy số 128 bít nhị phân quả là không thuận tiện, và để nhớ chúng thì không thể. Do vậy, địa chỉ IPv6 được biểu diễn dưới dạng một dãy chữ số hexa.

Để biểu diễn 128 bít nhị phân IPv6 thành dãy chữ số hexa decimal, người ta chia 128 bít này thành các nhóm 4 bít, chuyển đổi từng nhóm 4 bít thành số hexa tương ứng và nhóm 4 số hexa thành một nhóm phân cách bởi dấu “:”. Kết quả, một địa chỉ IPv6 được biểu diễn thành một dãy số gồm 8 nhóm số hexa cách nhau bằng dấu “:”, mỗi nhóm gồm 4 chữ số hexa.

3.2.3 Rút gọn cách viết địa chỉ IPv6

Dãy 32 chữ số hexa của một địa chỉ IPv6 có thể có rất nhiều chữ số 0 đi liền nhau. Nếu viết toàn bộ và đầy đủ những con số này thì dãy số biểu diễn địa chỉ IPv6 thường rất dài. Do vậy, có thể rút gọn cách viết địa chỉ IPv6 theo hai quy tắc sau đây:

Quy tắc 1: Trong một nhóm 4 số hexa, có thể bỏ bớt những số 0 bên trái. Ví dụ cụm số “0000” có thể viết thành “0”, cụm số “09C0” có thể viết thành “9C0”

Quy tắc 2: Trong cả địa chỉ IPv6, một số nhóm liền nhau chứa toàn số 0 có thể không viết và chỉ viết thành “::”.

Tuy nhiên, chỉ được thay thế một lần như vậy trong toàn bộ một địa chỉ IPv6. Điều này rất dễ hiểu. Nếu chúng ta thực hiện thay thế hai hay nhiều lần các nhóm số 0 bằng “::”, chúng ta sẽ không thể biết được số các số 0 trong một cụm “::” để từ đó khôi phục lại chính xác địa chỉ IPv6 ban đầu.

Ví dụ về biểu diễn và rút gọn địa chỉ IPv6:

Trong ví dụ trên, địa chỉ

“2031:0000:130F:0000:0000:09C0:876A:130B” áp dụng quy tắc thu gọn thứ nhất có thể viết lại thành “2031:0:130F:0:0:9C0:876A:130B”. Áp dụng quy tắc rút gọn thứ hai có thể viết lại thành

“2031:0:130F::9C0:876A:130B”.

Địa chỉ IPv6 còn được biểu diễn theo cách thức liên hệ với địa chỉ IPv4. 32 bít cuối của địa chỉ IPv6 tương ứng địa chỉ IPv4 đƣợc biết theo cách viết thông thường của địa chỉ IPv4, như trong ví dụ trên

3.2.4 Biểu diễn một dải địa chỉ IPv6

Tương tự như IPv4, một dải địa chỉ IPv6 được viết dưới dạng một địa chỉ IPv6 đi kèm với số bít xác định số bít phần mạng (bít tiền tố), như sau: Địa chỉ IPv6/số bít mạng

Ví dụ:

Vùng địa chỉ FF::/8 tương ứng với dải địa chỉ bắt đầu từ FF00:0:0:0:0:0:0:0 đến FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF.

Vùng địa chỉ 2001:DC8:0:0::/64 tương ứng với dải địa chỉ bắt đầu từ 2001:0DC8:0:0:0:0:0:0 đến 2001:0DC8:0:0:FFFF:FFFF:FFFF:FFFF

3.3. Cấu trúc địa chỉ Ipv6

Bít xác định loại địa chỉ IPv6 (bít tiền tố - prefix):

Như đã đề cập, địa chỉ IPv6 có nhiều loại khác nhau. Mỗi loại địa chỉ có chức năng nhất định trong phục vụ giao tiếp. Để phân loại địa chỉ, một số bít đầu trong địa chỉ IPv6 được dành riêng để xác định dạng địa chỉ, được gọi là các bít tiền tố (prefix). Các bít tiền tố này sẽ quyết định địa chỉ thuộc loại nào và số lượng địa chỉ đó trong không gian chung IPv6.

Ví dụ: 8 bít tiền tố “1111 1111” tức “FF” xác định dạng địa chỉ multicast. Địa chỉ multicast chiếm 1/256 không gian địa chỉ IPv6. Ba bít tiền tố “001” xác định dạng địa chỉ unicast định danh toàn cầu, tương đương với địa chỉ IPv4 chúng ta vẫn thường sử dụng hiện nay.

Các bít định danh giao diện (interface ID):

Ngoại trừ dạng địa chỉ multicast và một số dạng địa chỉ cho mục đích đặc biệt, địa chỉ IPv6 sử dụng trong giao tiếp toàn cầu, cũng như link-local (là địa chỉ dùng trong giao tiếp giữa các IPv6 node trên một đường kết nối), site-local (địa chỉ được thiết kế cho giao tiếp trong phạm vi một site) đều có 64 bít cuối cùng được sử dụng để xác định một giao diện duy nhất trên một đường kết nối (tương đương với một mạng con

“subnet”).

3.4 Định danh giao diện (interface identifier) trong địa chỉ IPv6

Định danh giao diện là 64 bít cuối cùng trong một địa chỉ IPv6. Số định danh này sẽ xác định một giao diện trong phạm vi một mạng con (subnet). Định danh giao diện phải là số duy nhất trong phạm vi một subnet. 64 bít định danh này có thể được cấu thành tự động theo một trong những cách thức sau đây:

Ánh xạ từ dạng thức địa chỉ EUI-64 của giao diện.

Tự động tạo một cách ngẫu nhiên

Gắn giao diện bằng thủ tục gắn địa chỉ DHCPv6 .

Tự động tạo 64 bít định danh giao diện từ địa chỉ MAC của card mạng

Hiện nay, card mạng được định danh duy nhất toàn cầu theo cách thức định danh EUI-48 và EUI-64. Địa chỉ đánh theo cách thức này xác định duy nhất một card mạng trên toàn cầu, được gọi là địa chỉ MAC.

Dạng thức EUI-48: Dạng thức đánh địa chỉ EUI-48 dùng 48 bít.

Trong đó, 24 bít đầu sử dụng để định danh nhà sản xuất thiết bị và 24 bít sau là phần mở rộng, để định danh card mạng. Việc kết hợp một số định danh 24 bít duy nhất của một nhà sản xuất card mạng, và một số định danh 24 bít duy nhất của card nhà sản xuất đó cung cấp ra thị trường, sẽ tạo nên một con số 48 bít, xác định một card mạng duy nhất trên toàn cầu, đƣợc gọi là địa chỉ MAC (hay còn gọi địa chỉ vật lý, địa chỉ Ethernet), viết dưới dạng hexa decimal.

Dạng thức EUI-64: Nhằm tạo nên một không gian định danh thiết bị lớn hơn cho các nhà sản xuất, IEEE đƣa ra một phương thức đánh số mới cho các giao diện mạng gọi là EUI-64, trong đó giữ nguyên 24 bít định danh nhà sản xuất thiết bị và phần mở rộng tăng lên thành 40 bít.

Nếu giao diện mạng được định danh theo dạng thức này, địa chỉ phần cứng của nó sẽ gồm 64 bít.

Ánh xạ từ EUI-48 sang EUI-64: Dạng thức định danh EUI-48 đƣợc ánh xạ thành EUI-64 bằng cách thêm 16 bít có giá trị 11111111 11111110 (viết dưới dạng hexa sẽ là OxFFFE) vào giữa 48 bít của EUI-48 .

Cấu thành 64 bít định danh giao diện IPv6 từ địa chỉ MAC:

64 bít định danh giao diện trong địa chỉ IPv6 được tự động tạo nên từ 64 bít định danh dạng EUI-64 của giao diện mạng theo quy tắc như sau:

Trong số 24 bít xác định nhà cung cấp thiết bị, có một bít được quy định là bít U (xxxx xxUx xxxx xxxx xxxx xxxx). Thông thường bít này có giá trị 0. Người ta tiến hành đảo bít bít U này (từ 0 thành 1 và từ 1 thành 0), và lấy 64 bít sau khi thực hiện như vậy làm 64 bít định danh giao diện trong địa chỉ IPv6.

Ví dụ :

Tạo 64 bít định danh giao diện IPv6 từ địa chỉ MAC 00-90-27-17- FC-0F:

1. Tách địa chỉ MAC 48 bít EUI-48 (00-90-27-17-FC-0F) làm 2 phần, thêm vào 16 bít FFFE để trở thành dạng thức EUI-64 (00-90-27- FF-FE-17-FC-0F)

2. Tiến hành đảo bít U của dạng thức EUI-64 trên, sẽ thu đƣợc 64 bít định danh giao diện: 02-90-27-FF-FE-17-FC-0F

Một phần của tài liệu TÀI LIỆU HỌC TẬP MẠNG MÁY TÍNH (Trang 43 - 52)

Tải bản đầy đủ (PDF)

(94 trang)