Làm thế nào và tại sao tất cả các thiết bị trong nhà của bạn chia sẻ một địa chỉ IP
Nếu bạn giống như hầu hết mọi người, nhà cung cấp dịch vụ Internet của bạn cung cấp cho bạn một địa chỉ Giao thức Internet duy nhất và bộ định tuyến của bạn chia sẻ nó với tất cả các thiết bị được kết nối trong nhà của bạn.
Điều này thực sự vi phạm nguyên tắc đầu cuối, mà Internet được thiết kế xung quanh. Tuy nhiên, chỉ có rất nhiều địa chỉ IP được sử dụng - chúng tôi sắp hết.
Địa chỉ IP công cộng là một tài nguyên có giới hạn
Có ít hơn 4.2 tỷ địa chỉ IP IPv4 có sẵn. Nói cách khác, có nhiều thiết bị được kết nối trên hành tinh hơn là các địa chỉ IP công cộng, duy nhất cho chúng. Internet đang cạn kiệt địa chỉ IPv4, mặc dù chúng tôi đang phân phối chúng.
Thay vì nhà cung cấp dịch vụ Internet của bạn chỉ định một địa chỉ IP công cộng duy nhất cho mỗi thiết bị trong nhà bạn - bạn sẽ cần một địa chỉ IP bổ sung mỗi khi bạn mua máy tính mới, máy tính bảng, điện thoại thông minh, bảng điều khiển trò chơi hoặc bất cứ thứ gì khác - ISP của bạn thường gán cho bạn một địa chỉ IP.
Địa chỉ IP công cộng và riêng tư
Bộ định tuyến của bạn được kết nối trực tiếp với Internet và được gán địa chỉ IP công cộng của bạn (có thể thay đổi theo thời gian). Sau đó, bộ định tuyến của bạn chịu trách nhiệm chia sẻ địa chỉ IP công cộng của bạn giữa các máy tính và thiết bị được kết nối khác trong nhà của bạn.
Bộ định tuyến của bạn gán địa chỉ IP cục bộ cho các thiết bị được kết nối của bạn. Điều này cho phép họ liên lạc với nhau đằng sau bộ định tuyến của bạn trong nhà của bạn. Tuy nhiên, những địa chỉ IP cục bộ này không thể truy cập được từ Internet. Nói cách khác, địa chỉ IP công cộng của bạn có thể giống như 23.24.35.63. Bất cứ ai trên Internet cũng có thể thử kết nối với địa chỉ này và họ sẽ truy cập bộ định tuyến của bạn. Địa chỉ IP riêng của máy tính của bạn có thể giống như 192.168.1.100. Khi ai đó trên Internet cố gắng kết nối với địa chỉ này, máy tính của họ sẽ tìm địa chỉ 192.168.1.100 trên mạng cục bộ của họ.
Nếu điều này hơi khó hiểu, hãy thử nghĩ về một tòa nhà văn phòng. Địa chỉ của tòa nhà văn phòng có thể là 500 Fake Street, Fake Town, Hoa Kỳ. Bất cứ ai cũng có thể gửi thư đến địa chỉ này từ bất cứ nơi nào trên thế giới - địa chỉ này tương đương với một địa chỉ công cộng. Một văn phòng trong tòa nhà văn phòng có thể là Phòng của 203. Giống như các địa chỉ IP địa phương, Phòng Room 203 không phải là một địa chỉ duy nhất trên toàn cầu - nó được sử dụng trong nhiều tòa nhà văn phòng. Bạn không thể gửi thư trực tiếp đến Phòng 203 nếu bạn sống ở bên kia thế giới. Bạn phải gửi thư đến tòa nhà văn phòng.
Dịch địa chỉ mạng (NAT) & Chuyển tiếp cổng
Khi bạn kết nối với một cái gì đó trên Internet - ví dụ như một trang web - máy tính của bạn sẽ gửi các gói thông qua bộ định tuyến của bạn. Bộ định tuyến của bạn sửa đổi các gói và gán một cổng duy nhất cho mỗi kết nối đi trên bộ định tuyến. Khi trang web hoặc máy chủ khác gửi dữ liệu lại cho bạn, nó sẽ gửi dữ liệu trở lại cổng cụ thể đó và bộ định tuyến của bạn biết rằng nó sẽ gửi dữ liệu trở lại cùng một thiết bị đã khởi tạo kết nối ban đầu. Đây là cách các bộ định tuyến xử lý lưu lượng Internet cho nhiều máy tính cùng một lúc bằng một địa chỉ IP duy nhất và biết tất cả lưu lượng truy cập nên đi đâu.
Tuy nhiên, điều này có thể bị hỏng khi xử lý lưu lượng đến không được yêu cầu. Ví dụ: nếu ai đó cố gắng kết nối với địa chỉ IP của bộ định tuyến của bạn theo cách riêng của họ, bộ định tuyến của bạn không biết nơi nào sẽ gửi lưu lượng truy cập đó. Tất cả các bộ định tuyến của bạn có thể làm là lấy lưu lượng và loại bỏ nó. Điều này về cơ bản có nghĩa là bộ định tuyến của bạn hoạt động như một loại tường lửa, loại bỏ lưu lượng truy cập không được yêu cầu.
Nếu bạn muốn nhận lưu lượng đến này, bạn có thể thiết lập chuyển tiếp cổng trên bộ định tuyến của mình. Ví dụ: bạn có thể nói với bộ định tuyến của mình rằng bạn đang chạy máy chủ Minecraft trên cổng 25565 tại một địa chỉ IP cục bộ cụ thể. Khi bộ định tuyến của bạn nhận được kết nối trên cổng 25565, nó biết rằng nó sẽ chuyển lưu lượng truy cập đó đến địa chỉ IP cục bộ mà bạn đã chỉ định. Đây là lý do tại sao chuyển tiếp cổng là cần thiết cho các ứng dụng hoạt động như máy chủ và nhận lưu lượng truy cập không được yêu cầu từ bên ngoài mạng cục bộ của bạn.
Hai tương lai có thể
Như chúng tôi đã đề cập ở trên, chúng tôi đang chạy ra khỏi địa chỉ IP IPv4 bất chấp sự phân phối. Về lâu dài, mọi thiết bị đều hy vọng sẽ có địa chỉ IP riêng. Trong ngắn hạn, bạn thậm chí không thể có một địa chỉ IP công cộng của riêng mình.
- Địa chỉ IPv6 cho mỗi thiết bị: IPv4 có ít hơn 4.2 tỷ địa chỉ, nhưng IPv6 có thể cung cấp 2128 địa chỉ IP có thể. Wolfram Alpha có thể giúp chúng tôi đưa con số khổng lồ này vào viễn cảnh: Đó là 340282366920938463463374607431768211456 địa chỉ IP khác nhau, hoặc khoảng 501000000000000000000000000000000 địa chỉ IP duy nhất cho mỗi người trên hành tinh. Khi IPv6 trở nên phổ biến hơn và thay thế IPv4, chúng tôi có thể chỉ định cho mỗi thiết bị được kết nối một địa chỉ IP duy nhất trên Internet.
- NAT lớp tàu sân bay: Trong ngắn hạn, một số ISP đang vật lộn để cung cấp địa chỉ IPv4 cho khách hàng của họ. NAT cấp nhà cung cấp là một giải pháp được đề xuất mà một số ISP đang tìm kiếm. Một ISP sử dụng NAT cấp nhà cung cấp sẽ giữ địa chỉ IP công cộng của riêng mình. Nó sẽ sử dụng NAT (giống như bộ định tuyến gia đình của bạn) để phân phát địa chỉ IP cục bộ cho tất cả khách hàng của mình. Khách hàng sẽ không có địa chỉ IP công cộng duy nhất của riêng mình trên Internet và sẽ không thể sử dụng phần mềm máy chủ yêu cầu chuyển tiếp cổng hoặc kết nối trực tiếp.
Internet không bao giờ được thiết kế cho rất nhiều thiết bị được kết nối và bộ định tuyến gia đình có công nghệ NAT là lý do duy nhất chúng ta có thể kết nối rất nhiều thiết bị mà không cần chuyển sang IPv6.
Tín dụng hình ảnh: Matt J Newman trên Flickr, Bob Mical trên Flickr, webhamster trên Flickr, Jemimus trên Flickr