CHƯƠNG 1 : CƠ SỞ LÝ THUYẾT
b. Cấu trúc của địa chỉ IP và các lớp địa chỉ
1.7. Kỹ thuật NAT (Network Address Translation)
Cùng với sự bùng nổ Internet như hiện nay và nhu cầu sử dụng hệ thống mạng ngày càng gia tăng, không gian địa chỉ IPv4 bắt đầu bị giới hạn. Giải pháp đưa ra là thiết kế lại định dạng địa chỉ IP, cho phép nhiều địa chỉ IP hơn nữa (cụ thể là IPv6). Tuy nhiên giải pháp này vẫn đang trong giai đoạn nghiên cứu và phát triển và phải mất nhiều năm để thực hiện.
Do đó giải pháp tốt nhất là sử dụng đến kỹ thuật NAT. NAT cho phép một thiết bị như Router hoạt động như một người đại diện trung gian giữa Internet (hoặc Public Network: hệ thống mạng công cộng) và Local (hoặc Private: hệ thống mạng nội bộ). Điều này có nghĩa là một máy tính chỉ có một địa chỉ IP duy nhất.
1.7.1. Khái niệm NAT
NAT (Network Address Translation) là một kỹ thuật cho phép chuyển đổi từ một địa chỉ IP này thành một địa chỉ IP khác. Thông thường, NAT được dùng phổ biến trong mạng sử dụng địa chỉ cục bộ, cần truy cập đến mạng cơng cộng (Internet). Vị trí thực hiện NAT là router biên kết nối giữa hai mạng.
Hình 1.46. Network Address Translation
NAT giống như một Router, chuyển tiếp các gói tin giữa những lớp mạng khác nhau trên một mạng lớn. NAT dịch hay thay đổi một hoặc cả hai địa chỉ bên trong một gói tin khi gói tin đó đi qua một Router, hay một số thiết bị khác. Thông thường NAT thường thay đổi địa chỉ thường là địa chỉ riêng (IP Private) của một kết nối mạng thành địa chỉ công cộng (IP Public).
NAT cũng có thể coi như một Firewall (tường lửa) cơ bản. NAT duy trì một bảng thơng tin về mỗi gói tin được gửi qua. Khi một máy tính trên mạng kết nối đến 1 website trên Internet header của địa chỉ IP nguồn được thay thế bằng địa chỉ Public đã được cấu hình sẵn trên NAT server, sau khi có gói tin trở về NAT dựa vào bảng record mà nó đã lưu về các gói tin, thay đổi địa chỉ IP đích thành địa chỉ của PC trong mạng và chuyển tiếp đi. Thông qua cơ chế đó quản trị mạng có khả năng lọc các gói tin được gửi đến hay gửi từ một địa chỉ IP và cho phép hay ngăn truy cập đến một port cụ thể.
1.7.2. Địa chỉ Private và địa chỉ Public
1.7.2.1. Địa chỉ private
Địa chỉ private chỉ được sử dụng trong mạng nội bộ, không được định tuyến trong môi trường Internet. Trong các mạng LAN khác nhau địa chỉ private có thể lặp lại.
Range của địa chỉ private:
Lớp A: 10.0.0.0 - 10.255.255.255
Lớp B: 172.16.0.0 - 172.31.255.255
Lớp C: 192.168.0.0 - 192.168.255.255
1.7.2.2. Địa chỉ public
Là các địa chỉ cịn lại, nằm ngồi range của địa chỉ private. Các địa chỉ public là các địa chỉ được cung cấp bởi các tổ chức có thẩm quyền.
1.7.3. Địa chỉ Inside và địa chỉ Outside trong một phiên NAT
Cisco định nghĩa các thuật ngữ được sử dụng trong NAT như sau:
Inside local address: Địa chỉ IP được gán cho một host của mạng trong. Đây là
địa chỉ được cấu hình như là một tham số của hệ điều hành trong máy tính hoặc được gán một cách tự động thông qua các giao thức như DHCP. Địa chỉ này không phải là những địa chỉ IP hợp lệ được cấp bởi NIC (Network Information Center) hoặc nhà cung cấp dịch vụ Internet.
Inside global address: Là một địa chỉ hợp lệ được cấp bởi NIC hoặc một nhà
cung cấp dịch vụ trung gian. Địa chỉ này đại diện cho một hay nhiều địa chỉ IP inside local trong việc giao tiếp với mạng bên ngoài.
Outside local address: Là địa chỉ IP của một host thuộc mạng bên ngoài, các
host thuộc mạng bên trong sẽ nhìn host thuộc mạng bên ngồi thơng qua địa chỉ này. Outside local không nhất thiết phải là một địa chỉ hợp lệ trên mạng IP (có thể là địa chỉ private).
Outside global address: Là địa chỉ IP được gán cho một host thuộc mạng ngoài
bởi người sở hữu host đó. Địa chỉ này được gán bằng một địa chỉ IP hợp lệ trên mạng Internet.
Một cách định nghĩa khác:
Local address: Là địa chỉ xuất hiện trong phần “inside” của một network (mạng
trong).
Global address: Là địa chỉ xuất hiện trong phần “outside” của một network
(mạng ngồi).
Các gói tin bắt nguồn từ phần mạng “inside” sẽ có địa chỉ source IP là địa chỉ kiểu “inside local” và destination IP là “ouside local” khi nó cịn ở trong phần mạng
“inside”. Cũng gói tin đó, khi được chuyển ra mạng “outside” source IP address sẽ được chuyển thành "inside global address" và địa destination IP của gói tin sẽ là “outside global address”
Ngược lại, khi một gói tin bắt nguồn từ một mạng “outside”, khi nó cịn đang ở mạng “outside” đó, địa chỉ source IP của nó sẽ là "outside global address", địa chỉ destination IP sẽ là "inside global address". Cũng gói tin đó khi được chuyển vào mạng “inside”, địa chỉ source sẽ là "outside local address" và địa chỉ destination của gói tin sẽ là "inside local address".
1.7.4. Phân loại kỹ thuật NAT
1.7.4.1. Static NAT (NAT tĩnh)
Static NAT được dùng để chuyển đổi một địa chỉ IP này sang một địa chỉ khác (one - to - one) một cách cố định, thông thường là từ một địa chỉ cục bộ sang một địa chỉ cơng cộng và q trình này được cài đặt thủ cơng, nghĩa là địa chỉ ánh xạ và địa chỉ ánh xạ chỉ định rõ ràng tương ứng duy nhất.
Static NAT rất hữu ích trong trường hợp những thiết bị cần phải có địa chỉ cố định để có thể truy cập từ bên ngồi Internet. Những thiết bị này phổ biến là những Server như Web, Mail,...
Hình 1.48. Static NAT1.7.4.2. Dynamic NAT (NAT động) 1.7.4.2. Dynamic NAT (NAT động)
Dynamic NAT được dùng để ánh xạ một địa chỉ IP này sang một địa chỉ khác một (one - to - one) cách tự động, thông thường là ánh xạ từ một địa chỉ cục bộ sang một địa chỉ được đăng ký. Bất kỳ một địa chỉ IP nào nằm trong dải địa chỉ IP công cộng đã được định trước đều có thể được gán một thiết bị bên trong mạng.
1.7.4.3. NAT Overload
Nat Overload là một dạng của Dynamic NAT, nó thực hiện ánh xạ nhiều địa chỉ IP thành một địa chỉ (many - to - one) và sử dụng các địa chỉ số cổng khác nhau để phân biệt cho từng chuyển đổi. NAT Overload cịn có tên gọi là PAT (Port Address
Translation).
Chỉ số cổng được mã hóa 16 bit, do đó có tới 65536 địa chỉ nội bộ có thể được chuyển đổi sang một địa chỉ cơng cộng.
Hình 1.50. NAT Overload