Các phương pháp giao thức gán địa chỉ IP cho máy tính DT7 Báo cáo bài tập lớn môn Mạng máy tính Viện điện tử viễn thông Đại học Bách Khoa Hà Nội
Trang 1Các giao thức/ph-ơng thức gán địa chỉ IP
Tr-ờng Đại học Bách Khoa Hà Nội
KHOA ĐIệN Tử VIễN THÔNG
Chủ đề 13 : Các giao thức/ph-ơng thức gán địa chỉ IP
Nhóm thực hiện : Trịnh Minh Đức Đặng Xuân Sơn Lớp : ĐT8-K48
Nội dung cơ bản :
Phần 1 - Giới thiệu chung về địa chỉ IP và mục đích gán IP Phần 2 - Các ph-ơng thức gán địa chỉ IP
Phần 3 - Các giao thức gán địa chỉ IP
Trang 2
Phần 1 : Địa chỉ IP và mục đích của việc gán IP
1.Giới thiệu về địa chỉ IP
Nh- chúng ta đã biết , ngày nay Internet là một ph-ơng tiện hữu hiệu để con ng-ời ở khắp nơi trên thế giới trao đổi thông tin với nhau chỉ qua một vài
động tác nhấp chuột Mỗi một hệ thống bất kỳ tham gia vào mạng truyền thông thì đầu tiên chúng cần phải đ-ợc nhận diện và định vị thì mới có thể gửi và nhận dữ liệu của nhau , mỗi một máy tính trên mạng TCP/IP phải
đ-ợc cấp một danh định duy nhất , từ đó xuất hiện khái niệm Internet
Protocol mà chúng ta vẫn th-ờng gọi là địa chỉ IP Địa chỉ này cho phép
máy tính định vị các máy khác trên mạng
Vậy thế nào là địa chỉ IP ?
Hiện nay có 2 cách để đánh địa chỉ IP là IPv4 và IPv6 nh-ng IPv6 ch-a
đ-ợc sử dụng rộng rãi nên trong bài này bọn em chỉ trình bày cách phân chia
IP theo IPv4
Chia địa chỉ IP theo IPv4 :
Địa chỉ IP là một tổ hợp 32 bit nhị phân và để cho việc sử dụng đ-ợc dễ dàng ng-ời ta th-ờng viết địa chỉ IP d-ới dạng 4 số thập phân đ-ợc tách ra :
Ph-ơng pháp viết này gọi là dạng thập phân có dấu chấm cách (dotted-decimal format) , mỗi một phần 8 số nhị phân đ-ợc gọi là một octet Một địa chỉ IP gồm 2 phần là : network ID và host ID , khi địa chỉ IP
đ-ợc gán cho máy tính số bit bên trái biểu diễn cho một mạng số bit còn lại
đinh danh cho một máy tính đặc biệt trên mạng qua đó biểu diễn cho một máy tính đặc biệt trên một mạng đặc biệt :
Trang 3
Kiểu địa chỉ này đ-ợc gọi là địa chỉ phân cấp vì nó chứa nhiều mức khác nhau Một IP kết hợp 2 phần thành 1 số , số này phải là duy nhất nếu không sẽ làm cho quá trình định tuyến không thể thực hiện đ-ợc
Tùy theo kích th-ớc của mạng lớn hay nhỏ mà ng-ời ta chia địa chỉ IP ra các lớp khác nhau :
Địa chỉ lớp A đ-ợc gán cho các mạng lớn
Địa chỉ lớp B đ-ợc gán cho các mạng trung bình
Địa chỉ lớp C đ-ợc gán cho các mạng nhỏ
Địa chỉ lớp D đ-ợc dùng cho địa chỉ multicast
Việc chia địa chỉ thành các lớp nh- vậy đ-ợc làm nh- sau :
Trang 4
Lớp A dùng 1 octet đầu tiên cho phần mạng trong đó bit đầu tiên cố định
là 0 , còn lại là phần host
octet đầu tiên của lớp A : từ 00000000 đến 01111111 tức là từ 0 đến
127 theo thập phân , theo qui định 0 và 127 đ-ợc dành riêng không thể sử dụng nh- các địa chỉ mạng vì vậy bất kỳ địa chỉ IP nào có octet đầu tiên nằm trong khoảng 1-126 đều thuộc lớp A Với nhiều hơn 16 triệu địa chỉ host có sẵn địa chỉ lớp A đ-ợc thiết kế cho các mạng cực kỳ lớn
Lớp B dùng 2 octet đầu cho phần mạng trong đó 2 bit đầu tiên cố định là
10 Octet đầu tiên của lớp B sẽ là : từ 10000000 đến 10111111 đổi sang thập phân là từ 128 – 191
Lớp C dùng 3 octet đầu cho phần mạng với 3 bit đầu cố định là 110 Octet đầu tiên của lớp C biểu diễn từ : 11000000 đến 11011111 có nghĩa là
từ 192 đến 223 thập phân Không gian địa chỉ lớp C đ-ợc dùng phổ biến nhất trong số các lớp , phục vụ cho các mạng nhỏ với tối đa 254 host
Lớp D sử dụng 28 bit đầu tiên cho phần mạng trong đó 4 bit đầu tiên phải
là 1110 , lớp D có octet đầu tiên từ : 11100000- 11101111 tức là từ 223-239 Lớp D đ-ợc tạo ra cho phép multicasting cho địa chỉ IP, một địa chỉ multicast là một địa chỉ mạng duy nhất nh-ng lại cho phép gửi gói đến một nhóm các địa chỉ IP, với điều kiện nhóm IP đó đã đ-ợc định nghĩa tr-ớc là
địa chỉ multicast đó
Địa chỉ lớp E đ-ợc dùng cho việc nghiên cứu riêng, không một địa chỉ lớp E nào đ-ợc cấp phát trên mạng Internet
Bảng thống kê số mạng và số host trong mỗi mạng theo từng lớp :
Dải địa chỉ của các lớp :
Trang 5
Để nhận biết đ-ợc cách chia địa chỉ IP 32 bit nh- thế nào ta còn có khái niệm mặt nạ mạng con (Subnet mask) Đây cũng là một tổ hợp 32 bit viết nh- kiểu của địa chỉ IP giúp cho việc xác định trong một địa chỉ IP thì phần mạng tính từ đâu và phần host tính từ đâu , trong subnet mask phần định danh cho phần mạng gồm toàn bit 1 còn từ đó trở về bên phải định danh cho host sẽ gồm toàn bit 0
VD :
Một địa chỉ lóp C : 192.168.16.13 địa chỉ này có 3 octet đầu tiên là phần mạng còn lại là phần host , subnet mask của nó sẽ là :
11111111.11111111.1111111.00000000
Đổi sang thập phân sẽ là :
255.255.255.0
Ngoài ra ng-ời ta còn đ-a ra các khái niệm khác nh- địa chỉ IP cá nhân
và địa chỉ IP công cộng (private – public IP) …
2 Mục đích gán địa chỉ IP
Một máy tính muốn tham gia vào hoạt động của mạng cần phải có một cấu hình IP , một cấu hình IP cơ bản bao gồm 4 thông tin sau :
- Địa chỉ IP
- Default gateway
- Subnet mask
- Địa chỉ của DNS server
Trang 6Phần 2 : Các ph-ơng thức gán địa chỉ IP
Một host mạng cần lấy một địa chỉ IP duy nhất để hoạt động trên mạng Internet Địa chỉ vật lý hay địa chỉ MAC mà nó có chỉ có ý nghĩa cục bộ để nhận diện host trong LAN , vì đây là địa chỉ lớp 2 nên không thể dùng để
định tuyến ra khỏi mạng LAN đ-ợc Địa chỉ IP đ-ợc dùng phổ biến nhất trong truyền thông Internet , ng-ời quản trị mạng dùng hai ph-ơng pháp để gán IP là : gán tĩnh và gán động
1 Gán địa chỉ IP tĩnh static
Ph-ơng pháp gán tĩnh đ-ợc ng-ời quản trị mạng gán trực tiếp bằng tay cho máy tính : mọi thao tác từ địa chỉ IP , subnet mask default và địa chỉ của DNS server đều phải thực hiện một cách thủ công trên từng thiết bị của mạng Nếu triển khai ph-ơng pháp này trong một mạng cỡ lớn thì sẽ vô cùng khó khăn và phức tạp :
Trang 7
Ph-ơng pháp này áp dụng cho các mạng nhỏ và ít thay đổi , Lí do chính của việc các thiết bị đ-ợc cấp địa chỉ IP tĩnh là khi chúng cần đ-ợc xem xét từ một thiết bị khác , có thể đ-a ra đây ví dụ điển hình nh- sau : Nếu một Web server cứ mỗi lần khởi động lên lại nhận đ-ợc một địa chỉ IP mới thử hỏi có thể tìm đ-ợc Web server đó không Điều này cũng giống nh- khi ta muốn gọi điện tới một nơi mà số điện thoại của nó luôn luôn thay đổi
…
Việc gán tĩnh IP nh- vậy th-ờng sử dụng cho các server ứng dụng , các máy in mạng và các router để các host luôn biết đ-ợc cách thức truy cập các dịch vụ cần thiết
Với ph-ơng pháp này ng-ời quản trị mạng phải có một bản danh sách các địa chỉ đã đ-ợc sử dụng để tránh gán trùng địa chỉ vì khi trùng địa chỉ thì việc truyền dữ liệu trên mạng sẽ không thể thực hiện đ-ợc do định tuyến sai
Trang 8
2-Gán địa chỉ IP động - dynamic
Nếu cứ sử dụng ph-ơng pháp gán tĩnh nh- trên thì công việc của ng-ời quản trị mạng sẽ rất khó khăn vì thế ng-ời ta đã nghĩ ra ph-ơng pháp
gán địa chỉ IP động cho các máy tính khi chúng muốn tham gia mạng
Ph-ơng pháp này ng-ời quản trị mạng không phải trực tiếp cấu hình địa
chỉ IP bằng tay cho máy tính thay vào đó việc cấp IP cho mạng máy tính là
của các server có trong mạng Với ph-ơng pháp này việc quản lý mạng trở
lên dễ dàng hơn nhiều vì ng-ời quản trị mạng không cần thao tác trên từng
host mà chỉ cần cấu hình cho các server để chúng làm thay công việc của
mình
1-RARP
RARP – Reverse Address Resolution Protocol : là giao thức để một máy
trạm yêu cầu cấp IP cho nó khi nó chỉ biết địa chỉ MAC của nó Một thiết bị
mạng nh- diskless workstation có thể biết địa chỉ MAC của nó nh-ng lại
không biết địa chỉ IP đ-ợc gán cho nó khi đó RARP cho phép các thiết bị
này tạo ra một gói tin gọi là RARP request yêu cầu RARP server có mặt
trên mạng phải trả lời :
RARP liên hệ một địa chỉ MAC đã biết với một địa chỉ IP , liên hệ này
cho phép các thiết bị mạng đóng gói số liệu tr-ớc khi truyền đi bởi vì thiết bị
nguồn phải gộp cả địa chỉ MAC và địa chỉ IP của nó để thiết bị đích tiếp
nhận số liệu sau đó chúng chuyển lên các lớp cao hơn trong mô hình OSI và
đáp ứng lại cho thiết bị Do vậy thiết bị nguồn cần khởi động một quá trình
Trang 9gọi là RARP request để tìm IP của nó , yêu cầu này giúp host phát hiện đ-ợc
địa chỉ IP của nó , yêu cầu này sẽ đ-ợc đáp ứng bởi một RARP server –
th-ờng là một router
Sau khi đ-ợc server trả lời và biết đ-ợc địa chỉ IP mà nó đ-ợc cấp host
bắt đầu sử dụng địa chỉ này để truy nhập mạng
Thông điệp RARP có cấu trúc nh- sau :
Hardware type : chỉ ra loại giao tiếp phần cứng mà nơi gửi yêu cầu đáp ứng
Protocol type : chỉ ra loại giao thức lớp cao mà nơi gửi cung
Trang 10Hlen : chiều dài địa chỉ phần cứng
Plen : chiều dài địa chỉ giao thức
Operation : chỉ ra đây là loại gói tin gì
3 - RARP request
4 - RARP reply
…
Cấu trúc của gói tin RARP request
Trong gói tin này chỉ có địa chỉ MAC của thiết bị nguồn còn địa chỉ IP của nó ở trạng thái undefined
Sau khi server nhận đ-ợc gói tin này nó sẽ xác nhận đồng thời phát sinh gói tin reply cấp IP cho máy trạm
Cấu trúc của gói tin RARP reply
Ta có thể thấy ngay trong gói tin request thì chỉ có địa chỉ MAC của máy nguồn nh-ng ở gói tin response mà server gửi trả đã có địa chỉ IP mà nó cấp cho máy yêu cầu
Trang 11
2 - BOOTP
BOOTP – Bootrap Protocol : Đây là một giao thức cấp phát địa chỉ IP
đ-ợc định nghĩa trong RFC 951 năm 1985, lúc đầu ng-ời ta sử dụng BOOTP
để cấu hình IP cho máy trạm không có ổ đĩa Là giao thức hoạt động trong môi tr-ờng client/server , tuy gọi là giao thức cấp phát động nh-ng BOOTP không tự động cấp IP cho một host , ở đây ng-ời quản trị mạng tạo ra một tập tin cấu hình chỉ ra các thông số cho thiết bị , điều này có nghĩa là mỗi host trên mạng phải có một đặc tr-ng BOOTP kèm theo sự gán IP trên đó .Ng-ời quản trị mạng phải bổ sung host và bảo trì cơ sở dữ liệu BOOTP Khi client yêu cầu một một địa chỉ IP thì BOOTP server sẽ tìm trong bảng đã
đ-ợc cấu hình tr-ớc xem hàng nào t-ơng ứng với địa chỉ MAC của client hay không , nếu có thì địa chỉ IP sẽ đ-ợc cấp cho client , từ đó có thể thấy rằng
địa chỉ MAC và IP t-ơng ứng phải đ-ợc cấu hình tr-ớc trên BOOTP server
Quá trình cấp địa chỉ IP diễn ra nh- sau :
Khi host tham gia mạng sẽ yêu cầu cấp IP :
BOOTP server tìm trong cơ sở dữ liệu thông tin đã cấu hình về host để cấp IP cho host :
Trang 12
Một thiết bị dùng BOOTP để lấy địa chỉ IP khi khởi động máy BOOTP dùng UDP để tải các thông điệp , thông điệp UDP đ-ợc đóng trong một gói
IP Máy tính dùng BOOTP để gửi một broadcast IP đến server , khi server nhận đ-ợc nó cũng sẽ gửi lại một broadcast , host nhận đ-ợc frame sau khi bóc tách nếu thấy địa chỉ MAC của mình trong tr-ờng địa chỉ đích nó tiến hành l-u địa chỉ IP và các thông tin kèm theo trong thông điệp này
Cấu trúc của một thông điệp BOOTP :
Có 32 bit gồm các tr-ờng sau :
Op : mã lệnh của thông điệp (request hoặc reply)
Htype : loại địa chỉ phần cứng
Hlen : chiều dài địa chỉ phần cứng
Hops : dùng để BOOTP server gửi yêu cầu đến mạng khác (với host tr-ờng này đặt băng 0)
Xid : transaction ID
Secs : thời gian tính bằng giây kể từ khi host lấy đ-ợc IP
Ciaddr : địa chỉ IP của host
Yiaddr : địa chỉ IP máy cục bộ
Siaddr : địa chỉ server kế tiếp
…
Trang 13
Thông điệp BOOTP request
Trong thông điệp này chỉ có địa chỉ MAC của host còn địa chỉ MAC
và IP đích đều là địa chỉ broadcast , tr-ờng địa chỉ IP nguồn ch-a biết(unknow)
Thông điệp BOOTP reply
Trong thông điệp này server đã gửi cho host địa chỉ mà nó sẽ cấp
3-DHCP
DHCP – Dynamic Host Configuration Protocol : là một giao thức đ-ợc
sử dụng bởi mạng các máy tính (các client) để nhận đ-ợc địa chỉ IP và các tham số khác nh- default gateway, subnet mask và địa chỉ IP của DNS server
từ DHCP server Nó làm cho việc truy nhập mạng trở nên dễ dàng bởi vì sự hoạt động của nó khác với việc cấu hình bằng tay giúp các client tham gia vào mạng
DHCP nổi lên nh- là một giao thức chuẩn vào 10/1993 , là giao thức ra
đời ra tiếp sau BOOTP Nh-ng khác với BOOTP , DHCP cho phép một host lấy địa chỉ IP một cách linh động mà không cần ng-ời quản trị mạng thiết lập một profile riêng cho mỗi thiết bị , cái cần ở đây là phải định nghĩa một dải IP trên một DHCP server Khi các host tham gia vào mạng chúng sẽ liên
Trang 14trong dải đã đ-ợc định nghĩa và gán cho host Với DHCP công việc quản lý mạng IP sẽ ít hơn vì phần lớn cấu hình IP của host đ-ợc lấy về từ server , toàn bộ cấu hình mạng của một máy tính có thể đ-ợc lấy về chỉ qua một thông điệp , trong đó bao hàm tất cả các số liệu đ-ợc cung cấp bởi thông
điệp BOOTP cộng với địa chỉ IP và subnet mask
Một DHCP client có thể chạy hầu hết các hệ điều hành hiện tại gồm các phiên bản hệ điều hành Windows , Novell Netware , Sun Solaris , Linux và MacOS
DHCP là giao thức động để phân phối địa chỉ IP , subnet mask , default gateway và các tham số IP khác
Quá trình gán địa chỉ IP sử dụng DHCP diễn ra nh- sau :
Trang 15Khi một host muốn tham gia vào mạng nó sẽ phát đi một thông điệp yêu cầu cấp IP (DHCP discover) , thông điệp này đ-ợc gửi d-ới dạng gói tin broadcast tức là sẽ gửi cho toàn mạng để tìm ra DHCP server lấy IP
Khi server nhận đ-ợc gói tin này nó sẽ tìm trong cơ sở dữ liệu của nó và
đ-a ra quyết định trả lời là có đáp ứng yêu cầu này hay không , nếu server
Trang 16server khác trong mạng Nếu DHCP server có thể đáp ứng thì nó sẽ trả lời trực tiếp bằng gói tin DHCP offer cho host và đề nghị host dùng cấu hình IP của nó
Nếu host nhận thấy rằng lời mời của DHCP server là phù hợp nó sẽ gửi lại một gói tin DHCP request cung cấp những thông số cụ thể của cấu hình IP
ở đây có một điều cần l-u ý là gói tin DHCP request này vẫn đ-ợc gửi d-ới dạng broadcast mặc dù lúc này nó đã xác định đ-ợc địa chỉ của server Sở dĩ làm nh- vậy bởi vì lúc tr-ớc khi gửi DHCP discover host gửi broadcast nên nếu trong mạng có nhiều DHCP server thì các server khác cũng nhận đ-ợc dẫn đến việc sẽ có nhiều lời mời (DHCP offer) đ-ợc gửi , lần này gửi broadcast là để các server biết là lời mời nào đã đ-ợc chấp nhận , thông th-ờng thì gói tin offer nào gửi đến đầu tiên sẽ đ-ợc lựa chọn
Server đ-ợc chấp nhận khi nhận đ-ợc gói tin DHCP request nó sẽ gửi trực tiếp cho host một gói DHCP ack để xác nhận lại một lần nữa , cũng tồn tại tr-ờng hợp DHCP server không gửi gói tin ack : đó là trong khi đợi DHCP request nó đã gửi địa chỉ IP này cho một host khác
Khi host nhận đ-ợc gói tin DHCP ack thì nó có thể bắt đầu sủ dụng địa chỉ
IP đó
Trong tr-ờng hợp host phát hiện ra rằng địa chỉ IP mà nó đ-ợc server cấp cho đã đ-ợc sử dụng trong cùng mạng rồi nó sẽ gửi thông điệp DHCP decline và bắt đầu một quá trình yêu cầu cấp IP lại từ đầu, hoặc khi host nhận đ-ợc gói tin DHCP nak từ server thì nó cũng bắt đầu lại quá trình trên
Nếu host không sử dụng địa chỉ IP này nữa thì nó sẽ gửi thông điệp DHCP release cho server
Tùy theo quy định của mỗi tổ chức mà ng-ời quản trị mạng có thể cấp cố
định cho một host một địa chỉ IP nằm trong dải địa chỉ mà nó quản lý