Tại sao dùng nat proxy arp
Mạng LAN nhỏ hoạt động dựa trên hai lớp một và hai trong mô hình OSI ( lớp physical và datalink). Nhưng các giao thức liên mạng ( internet-work ) lại dựa trên địa chỉ lớp ba (lớp network). Việc phân giải địa chỉ giữa lớp datalink và lớp network nhằm giúp cho việc truyền dữ liệu được liên tục qua mạng.
Có hai phương pháp phân giải địa chỉ là : map trực tiếp và phân giải động. Việc map trực tiếp gặp nhiều khó khăn do địa chỉ MAC (lớp datalink) là địa chỉ 48 bit trong khi địa chỉ IP là 32 bit. Bên cạnh đó các nhà phát triển muốn tạo ra một cơ chế linh hoạt trong sử dụng. Chính vì vậy họ phát triển ARP ( Address Resolution Protocol ). Giao thức này được định nghĩa trong RFC 826 ARP là gì ? - ARP là phương thức phân giải địa chỉ động giữa địa chỉ lớp network và địa chỉ lớp datalink. Quá trình thực hiện bằng cách: một thiết bị IP trong mạng gửi một gói tin broadcast đến toàn mạng yêu cầu thiết bị khác gửi trả lại địa chỉ phần cứng ( địa chỉ lớp datalink ) của mình. - Ban đầu ARP chỉ được sử dụng trong mạng Ethernet để phân giải địa chỉ IP và địa chỉ MAC. Nhưng ngày nay ARP đã được ứng dụng rộng rãi và dùng trong các công nghệ khác dựa trên lớp hai. 2. Cơ chế hoạt động · Quá trình thực hiện ARP được bắt đầu khi một thiết bị nguồn trong mọt mạng IP có nhu cầu gửi một gói tin IP. Trước hết thiết bị đó phải xác định xem địa chỉ IP đích của gói tin có phải nằm cùng trong mạng nội bộ của mình hay không. Nếu đúng vậy thì thiết bị sẽ gửi trực tiếp gói tin đến thiết bị đích. Nếu địa chỉ IP đích nằm trên mạng khác, thì thiết bị sẽ gửi gói tin đến một trong các router nằm cùng trên mạng nội bộ để router này làm nhiệm vụ forward gói tin. Cả hai trường hợp ta đều thấy được là thiết bị phải gói tin IP đến một thiết bị IP khác trên cùng mạng nội bộ. Ta biết rằng việc gửi gói tin trong cùng mạng thông qua Switch là dựa vào địa chỉ MAC hay địa chỉ phần cứng của thiết bị. Sau khi gói tin đựoc đóng gói thì mới bắt đầu được chuyển qua quá trình phân giải địa chỉ ARP và được chuyển đi · ARP về cơ bản là một quá trình 2 chiều request/response giữa các thiết bị trong cùng mạng nội bộ. Thiết bị nguồn request bằng cách gửi một bản tin broadcast trên toàn mạng. Thiết bị đích response bằng một bản tin unicast đến thiết bị nguồn Các loại bản tin ARP Có hai dạng bản tin trong ARP : một được gửi từ nguồn đến đích, và một được gửi từ đích tới nguồn. · Request : Khởi tạo quá trình, gói
tin được gửi từ thiết bị nguồn tới thiết bị đích Có 4 loại địa chỉ trong một bản tin ARP : 1. Sender Hardware Address : địa chỉ lớp hai của thiết bị gửi bản tin Các bước hoạt động của ARP : 1. Source Device Checks Cache : Trong bước này, thiết bị sẽ kiểm tra cache ( bộ đệm ) của mình. Nếu đã có địa chỉ IP đích tương ứng với MAC nào đó rồi thì lập tức chuyển lên bước 9 3. ARP Caching ARP là một giao thức phân giải địa chỉ động. Quá trình gửi gói tin Request và Reply sẽ tiêu tốn băng thông mạng. Chính vì vậy càng hạn chế tối đa việc gửi gói tin Request và Reply sẽ càng góp phần làm tăng khả năng họat động của mạng.Từ đó sinh ra nhu cầu của ARP Caching Static and Dynamic ARP Cache Entries ARP Cache có dạng giống như một bảng tương ứng giữa địa chỉ hardware và địa chỉ IP. Có hai cách đưa các thành phần tương ứng vào bảng ARP : Dynamic Cache được sử dụng rộng rãi hơn vì tất cả các quá trình diễn ra tự động và không cần đến sự tương tác của người quản trị. Tuy nhiên static cache vẫn có phạm vi ứng dụng nhất định của nó. Đó là trường hợp mà các workstation nên có static ARP entry đến router và file server nằm trong mạng. Điều này sẽ hạn chế việc gửi các gói tin để thực hiện quá trình phân giải địa chỉ. Tuy nhiên ngoài hạn chế của việc phải nhập bằng tay, static cache còn thêm hạn chế nữa là khi địa chỉ IP của các thiết bị trong mạng thay đổi thì sẽ dẫn đến việc phải thay đổi ARP cache Quá trình xóa thông tin trong cache Ta xét trường hợp bảng cache của một thiết bị A, trong đó có chứa thông tin về thiết bị B trong mạng. Nếu các thông tin trong cache được lưu mãi mãi, sẽ có một số vấn đề như sau xảy ra : Để tránh được những vấn đề này, các thông tin trong dynamic cache sẽ được tự động xóa sau một khoảng thời gian nhất định. Quá trình này được thực hiện một cách hoàn toàn tự động khi sử dụng ARP với khoảng thời gian thường là 10 hoặc 20 phút. Sau một khoảng thời gian nhất định được lưu trong cache , thông tin sẽ được xóa đi. Lần sử dụng sau, thông tin sẽ được update trở lại 4. Proxy ARP ARP được thiết kế cho các thiết bị nằm trong nội mạng, có tính chất local. Tuy nhiên nếu hai thiết bị A và B bị chia cắt bởi 1 router thì chúng sẽ được coi như là không local với nhau nữa. Khi A muốn gửi thông tin đến B, A sẽ không gửi trực tiếp được đến B theo địa chỉ lớp hai, mà phải gửi qua router và được coi là cách nhau 2 hop ở lớp ba. Vì sao cần phải có Proxy ARP ? Khác với các trường hợp thông thường, nhiều trường hợp hai thiết bị A và B nằm trên 2 segment vật lý khác nhau nhưng được kết nối qua một router và cùng nằm trong một mạng IP hay một IP subnet. Lúc này A và B sẽ coi nhau có quan hệ local. Giả sử ta có tình huống A muốn gửi thông tin cho B. A nghĩ B trong cùng nội mạng và tìm trong bảng ARP cache. A không lưu địa chỉ MAC của B và bắt đầu tiến hành quá trình phân giải địa chỉ. A broadcast gói ARP request trong nội mạng để tìm địa chỉ MAC của B. Sẽ có vấn đề xảy ra : B không cùng nằm trong mạng và sẽ không nhận được gói tin broadcast cũng như router kết nối sẽ không forward gói broadcasr từ A qua B ( router không truyền các gói broadcast ở lớp datalink ) VÌ vậy B không bao giờ nhận được request từ A cũng như A sẽ không bao giờ có được địa chỉ MAC của B Hoạt động của Proxy ARP Giải pháp cho tình huống này được gọi là ARP proxying hay Proxy ARP. Trong công nghệ này, router nằm giữa 2 mạng local sẽ được cấu hình để đáp ứng các gói tin broadcast gửi từ A thay cho B. Router sẽ không gửi cho A địa chỉ MAC của B, vì dù thế nào A và B cũng nằm trên hai mạng khác nhau và không thể gửi trực tiếp đến nhau được. Thay vào đó router sẽ gửi cho A các địa chỉ MAC cảu chính router. A sau đó sẽ gửi thông các gói tin cho router, và router sẽ forward sang cho B. Quá trình cũng hoàn toàn diễn ra tương tự khi B muốn gửi thông tin cho A, hay cho bất cứ thiết bị nào mà đích đến của gói tin là một thiết bị ở một mạng khác. Trong ví dụ, một router kết nối hai mạng LAN cùng trong một mạng IP hoặc subnet với nhau. Router sẽ không truyền các gói tin ARP broadcast nhưng được cấu hình để hoạt động như một ARP proxy. Hai thiết bị A và D có nhu cầu gửi các gói tin IP cho nhau, chính vì vậy chúng broadcast các gói ARP request. Router sẽ đáp ứng lại các gói tin request từ A như thể là D ( router không truyền gói request đến D ). Tương tự, router cũng sẽ dùng địa chỉ của mình để gửi trả các gói tin từ D gửi cho A. Ưu điểm và nhược điểm của Proxying Ưu điểm dễ nhận thấy của Proxy ARP là các router hoạt động nhưng các thiết bị không hề cảm nhận được sự hoạt động của nó. Các hoạt động gửi nhận giữa hai thiết bị thuộc hai LAN khác nhau vẫn diễn ra bình thường Tuy nhiên nó vẫn có những mặt trái và những điểm hạn chế của mình : · Thứ nhất, nó làm tăng độ phức tạp
của mạng Do vậy, giải pháp tốt nhất là thiết kế lại topo mạng để chỉ một router kết nối tới hai LAN nằm trong một mạng IP. |