5.1 Giới thiệu về NAT

Một chủ đề rất thú vị khác là NAT. NAT là viết tắt của Network Address Translation và thường có mặt trong mọi bộ định tuyến dưới dạng dịch vụ. Vì vậy, nó là gì và tại sao nó cần thiết?

NAT là một điểm mà các mạng cục bộ có thể được kết nối với các mạng toàn cầu, chẳng hạn như Internet chẳng hạn.

Như bạn đã biết, trên các mạng cục bộ, tất cả các máy tính (và các thiết bị khác được kết nối với mạng) đều có địa chỉ IP cục bộ của riêng chúng. Và để trao đổi dữ liệu với một máy chủ trên Internet, điều cần thiết là máy tính của chúng tôi có thể gửi yêu cầu đến máy chủ và máy chủ có thể gửi phản hồi cho chúng tôi. Và anh ấy nên gửi phản hồi ở đâu nếu địa chỉ IP của chúng tôi không xác định được bên ngoài mạng cục bộ của chúng tôi?

Hãy tưởng tượng rằng bạn đang viết một bức thư giấy cho Donald Trump. Trump là người của công chúng, ông ấy là người duy nhất - đây là máy chủ công cộng của chúng tôi. Và bạn cho biết Masha là địa chỉ trả lại trong thư. Nghiền rất nhiều. Masha nào nên được gửi câu trả lời?

Vì vậy, bạn gửi một lá thư cho người quen của bạn ở Washington, cũng là một nhân vật của công chúng, với những chỉ dẫn nghiêm ngặt để gửi nó cho Trump. Bạn của bạn nhận được một lá thư, gửi nó cho Trump và cung cấp địa chỉ của anh ấy ở Washington làm địa chỉ gửi lại.

Sau đó, sau khi nhận được phản hồi từ Trump, người quen sẽ chuyển tiếp nó cho bạn. Tương tự với các gói IP ...

Để cho phép một thiết bị có địa chỉ IPv4 riêng truy cập các thiết bị và tài nguyên bên ngoài mạng cục bộ, trước tiên địa chỉ riêng phải được thay đổi thành địa chỉ công cộng chung.

Chỉ cần NAT dịch địa chỉ riêng thành địa chỉ công khai. Điều này cho phép một thiết bị có địa chỉ IP cục bộ truy cập các tài nguyên bên ngoài mạng riêng của nó. NAT, kết hợp với các địa chỉ IP cục bộ, đã được chứng minh là một phương pháp hữu ích để duy trì các địa chỉ IPv4 công khai.

Có 8 tỷ người trên thế giới và đã có nhiều thiết bị mạng hơn: điện thoại, máy tính xách tay, đồng hồ thông minh, máy chủ, bất kỳ thiết bị thông minh nào. Và chỉ có 4 tỷ địa chỉ IP. Nó từng có vẻ như rất nhiều, nhưng với sự phát triển nhanh chóng của Internet, mọi người thấy rõ rằng điều này là không đủ.

Ở đây NAT ra tay giải cứu: một địa chỉ IPv4 công cộng có thể được sử dụng bởi hàng trăm, thậm chí hàng nghìn thiết bị, mỗi thiết bị có một địa chỉ IPv4 cục bộ. NAT có thêm lợi ích là thêm một mức độ riêng tư và bảo mật cho mạng vì nó ẩn địa chỉ IPv4 nội bộ khỏi các mạng bên ngoài.

5.2 Mạng con trong NAT

Mạng LAN thường được thiết kế với địa chỉ IP riêng. Đây là những địa chỉ từ các mạng con riêng 10.0.0.0/8172.16.0.0/12. 192.168.0.0/16Các địa chỉ IP này được sử dụng nội bộ bởi một tổ chức hoặc trang web để cho phép các thiết bị giao tiếp cục bộ, chúng không thể định tuyến được trên internet.

Bộ định tuyến hỗ trợ NAT có thể được cấu hình bằng một hoặc nhiều địa chỉ IPv4 công cộng hợp lệ. Những địa chỉ công khai này được gọi là nhóm NAT.

Khi một thiết bị trên mạng nội bộ gửi lưu lượng truy cập từ mạng ra bên ngoài, bộ định tuyến hỗ trợ NAT sẽ dịch địa chỉ IP nội bộ của thiết bị thành địa chỉ IP công cộng từ nhóm NAT. Đối với các thiết bị bên ngoài, tất cả lưu lượng truy cập vào và ra khỏi mạng dường như có một địa chỉ IP công cộng.

Một bộ định tuyến NAT thường hoạt động ở rìa của mạng Stub. Mạng sơ khai là một thuật ngữ từ lý thuyết mạng: một mạng sơ khai có một kết nối với mạng lân cận, một mục nhập và thoát khỏi mạng.

Khi một thiết bị bên trong mạng Stub muốn liên lạc với một thiết bị bên ngoài mạng của nó, gói sẽ được chuyển tiếp đến bộ định tuyến và nó thực hiện quy trình NAT, dịch địa chỉ riêng bên trong của thiết bị thành địa chỉ công khai, bên ngoài, có thể định tuyến.

5.3 Thuật ngữ NAT

Nếu bạn đi sâu vào lý thuyết về mạng, thì NAT là một mạng nội bộ, là một tập hợp các mạng con được dịch. Mạng bên ngoài đề cập đến tất cả các mạng khác.

Khi sử dụng NAT, các địa chỉ IP có các chỉ định khác nhau dựa trên việc chúng nằm trên mạng riêng hay mạng công cộng (trên Internet) và liệu lưu lượng truy cập đến hay đi.

NAT bao gồm bốn loại địa chỉ:

  • Địa chỉ nội bộ (Inside local address);
  • Địa chỉ toàn cục bên trong (Inside global address);
  • Địa chỉ ngoài địa phương ;
  • Địa chỉ toàn cục bên ngoài (Outside global address);

Khi xác định loại địa chỉ nào đang được sử dụng, điều quan trọng cần nhớ là thuật ngữ NAT luôn được áp dụng theo quan điểm của thiết bị có địa chỉ được dịch:

  • Địa chỉ nội bộ (Inside address) - địa chỉ của thiết bị được dịch bởi NAT;
  • Địa chỉ bên ngoài – địa chỉ thiết bị đích;
  • Địa chỉ cục bộ là bất kỳ địa chỉ nào xuất hiện bên trong mạng;
  • Địa chỉ Toàn cầu là bất kỳ địa chỉ nào xuất hiện ở bên ngoài mạng.

Hãy xem xét điều này với một ví dụ sơ đồ.

Máy tính trong hình bên trái có một địa chỉ cục bộ bên trong ( Inside local ) 192.168.1.5và theo quan điểm của nó, máy chủ web có một địa chỉ bên ngoài ( bên ngoài ) 208.141.17.4. Khi các gói dữ liệu được gửi từ máy tính đến địa chỉ chung của máy chủ web, địa chỉ cục bộ bên trong ( Inside local ) của PC được dịch sang 208.141.16.5( inside global ). Địa chỉ thiết bị bên ngoài thường không được dịch vì đây là địa chỉ IPv4 công khai.

Điều đáng chú ý là một máy tính có hai địa chỉ: địa chỉ cục bộ và địa chỉ toàn cầu, trong khi máy chủ web có cùng địa chỉ IP công cộng. Theo quan điểm của anh ấy, lưu lượng truy cập bắt nguồn từ máy tính đến từ địa chỉ toàn cầu nội bộ 208.141.16.5. Bộ định tuyến NAT là điểm phân tách giữa mạng nội bộ và mạng bên ngoài cũng như giữa địa chỉ cục bộ và địa chỉ toàn cầu.

Các thuật ngữ bên trongbên ngoài được kết hợp với các thuật ngữ địa phươngtoàn cầu để chỉ các địa chỉ cụ thể. Trong hình, bộ định tuyến được cấu hình để cung cấp NAT và có một nhóm địa chỉ công cộng để gán cho các máy chủ nội bộ.

5.4 Đường dẫn gói tin

Nếu bạn đã mệt mỏi, hãy chuyển sang bài giảng tiếp theo. Nếu bạn vẫn quan tâm, thì chào mừng bạn tiếp tục đi xuống hố sâu.

Hình dưới đây cho thấy cách lưu lượng được gửi từ máy tính nội bộ đến máy chủ web bên ngoài thông qua bộ định tuyến hỗ trợ NAT, gửi đi và chuyển tiếp trở lại.

Mạng con trong NAT 3
bảng NAT của bộ định tuyến
máy tính máy chủ web
Insde toàn cầu bên trong địa phương bên ngoài địa phương Bên ngoài toàn cầu
208.141.17.4 192.168.1.5 208.141.16.5 208.141.16.5

Địa chỉ nội bộ bên trong - Địa chỉ nguồn được nhìn thấy từ mạng nội bộ. Trong hình, địa chỉ 192.168.1.5được gán cho máy tính - đây là địa chỉ cục bộ bên trong của nó.

Địa chỉ toàn cầu bên trong - Địa chỉ nguồn được nhìn thấy từ mạng bên ngoài. Trong hình, khi lưu lượng truy cập từ máy tính được gửi đến máy chủ web tại 208.141.17.4, bộ định tuyến sẽ dịch địa chỉ cục bộ bên trong (địa chỉ cục bộ) thành địa chỉ toàn cầu bên trong (Inside global address). Trong trường hợp này, bộ định tuyến thay đổi địa chỉ nguồn IPv4 từ 192.168.1.5thành 208.141.16.5.

Địa chỉ toàn cầu bên ngoài - địa chỉ của đích nhìn từ mạng bên ngoài. Đây là địa chỉ IP có thể định tuyến toàn cầu được gán cho một máy chủ lưu trữ trên Internet. Trong sơ đồ, máy chủ web có sẵn tại 208.141.17.4. Thông thường, địa chỉ cục bộ bên ngoài và địa chỉ toàn cầu bên ngoài giống nhau.

Địa chỉ cục bộ bên ngoài - Địa chỉ của người nhận được nhìn thấy từ mạng nội bộ. Trong ví dụ này, máy tính gửi lưu lượng đến máy chủ web tại208.141.17.4

Bây giờ hãy xem toàn bộ đường dẫn gói. Máy tính có địa chỉ 192.168.1.5đang cố liên lạc với máy chủ web 208.141.17.4. Khi một gói đến một bộ định tuyến hỗ trợ NAT, nó sẽ đọc địa chỉ IP đích của gói để xác định xem gói có phù hợp với tiêu chí được chỉ định để dịch hay không. Trong ví dụ này, địa chỉ nguồn phù hợp với tiêu chí và được dịch từ 192.168.1.5(Địa chỉ cục bộ bên trong) sang 208.141.16.5(Địa chỉ toàn cầu bên trong).

Bộ định tuyến thêm ánh xạ địa chỉ cục bộ đến toàn cầu này vào bảng NAT và gửi gói có địa chỉ nguồn đã dịch đến đích. Máy chủ web phản hồi bằng một gói được gửi đến địa chỉ chung nội bộ của PC ( 208.141.16.5).

Bộ định tuyến nhận một gói có địa chỉ đích 208.141.16.5và kiểm tra bảng NAT để tìm mục nhập cho ánh xạ đó. Nó sử dụng thông tin này và dịch ngược địa chỉ toàn cầu bên trong ( 208.141.16.5) thành địa chỉ cục bộ bên trong ( 192.168.1.5), gói được chuyển hướng tới PC.

5.5 Ưu nhược điểm của NAT

Dịch vụ NAT là một giải pháp rất mạnh được sử dụng ở mọi nơi. NAT cung cấp nhiều lợi ích bao gồm:

  • NAT duy trì sơ đồ địa chỉ đã đăng ký, cung cấp hoạt động LAN linh hoạt. Với NAT, các máy chủ nội bộ có thể chia sẻ một địa chỉ IP công cộng cho tất cả các giao tiếp bên ngoài. Loại cấu hình này yêu cầu rất ít địa chỉ bên ngoài để hỗ trợ nhiều máy chủ bên trong.
  • NAT tăng tính linh hoạt của các kết nối Internet. Có thể triển khai nhiều nhóm, nhóm dự phòng và nhóm cân bằng tải để cung cấp các kết nối mạng công cộng đáng tin cậy.
  • NAT cung cấp tính nhất quán cho sơ đồ địa chỉ nội bộ của mạng. Trên mạng không sử dụng địa chỉ IP riêng và NAT, việc thay đổi sơ đồ địa chỉ IP chung yêu cầu chuyển hướng tất cả các máy chủ trên mạng hiện có. Chi phí chuyển tiếp máy chủ có thể là đáng kể. NAT cho phép duy trì sơ đồ địa chỉ riêng IPv4 hiện có trong khi cho phép dễ dàng thay đổi sơ đồ địa chỉ công cộng mới. Điều này có nghĩa là một tổ chức có thể thay đổi nhà cung cấp và không cần thay đổi bất kỳ khách hàng nội bộ nào của mình.
  • NAT cung cấp bảo mật mạng . Bởi vì các mạng riêng không quảng cáo địa chỉ hoặc cấu trúc liên kết nội bộ của chúng, nên chúng vẫn đáng tin cậy khi được sử dụng cùng với NAT để giành quyền truy cập bên ngoài được kiểm soát. Tuy nhiên, bạn cần hiểu rằng NAT không thay thế tường lửa.

Nhưng NAT có một số nhược điểm . Thực tế là các máy chủ trên internet dường như đang nói chuyện trực tiếp với thiết bị hỗ trợ NAT thay vì với máy chủ thực sự bên trong mạng riêng tạo ra một số vấn đề:

  • Một trong những nhược điểm của việc sử dụng NAT liên quan đến hiệu suất mạng, đặc biệt đối với các giao thức thời gian thực như VoIP. NAT làm tăng độ trễ chuyển đổi vì việc dịch từng địa chỉ IP trong tiêu đề gói cần có thời gian.
  • Một nhược điểm khác của việc sử dụng NAT là địa chỉ end-to-end bị mất. Nhiều giao thức và ứng dụng Internet dựa trên địa chỉ đầu cuối từ nguồn đến đích. Một số ứng dụng không hoạt động với NAT. Các ứng dụng sử dụng địa chỉ vật lý thay vì tên miền đủ điều kiện không đến được các đích được dịch qua bộ định tuyến NAT. Điều này đôi khi có thể tránh được bằng cách triển khai ánh xạ NAT tĩnh.
  • Theo dõi IPv4 từ đầu đến cuối cũng bị mất. Việc theo dõi các gói trải qua nhiều lần thay đổi địa chỉ gói qua nhiều bước nhảy NAT sẽ khó khăn hơn, khiến việc khắc phục sự cố trở nên khó khăn.
  • Việc sử dụng NAT cũng làm cho các giao thức tạo đường hầm như IPsec trở nên khó khăn vì NAT thay đổi giá trị trong các tiêu đề cản trở việc kiểm tra tính toàn vẹn được thực hiện bởi IPsec và các giao thức tạo đường hầm khác.
  • Các dịch vụ yêu cầu bắt đầu kết nối TCP từ mạng bên ngoài hoặc các giao thức không trạng thái như các giao thức sử dụng UDP, có thể bị hỏng. Nếu bộ định tuyến NAT không được cấu hình để hỗ trợ các giao thức này, các gói đến không thể đến được đích của chúng.