Top Menu

Marquee

Blog chia sẽ kiến thức, kinh nghiệm, thủ thuật và các vấn đề IT.....

1. Port forwarding là gì?

1. Port forwarding là gì?
Nếu máy tính của bạn kết nối với internet thông qua router hoặc có một trình firewall đang chạy, port forwarding là động tác mở một cổng trên router/firewall để các kết nối từ bên ngoài có thể thiết lập được với máy tính của bạn.

Có một vài điểm mà bạn cần nắm rõ trước khi bắt tay vào tìm hiểu về port forwarding. Để cho đơn giản và nhanh chóng, bạn hãy tạm chấp nhận những *tiên đề* sau (đúng trong hầu hết các trường hợp):
1. Mỗi thiết bị trên mạng internet đầu có ít nhất 1 địa chỉ IP. Địa chỉ IP là một con số được sử dụng để nhận diện một thiết bị.
2. Mỗi địa chỉ IP được chia ra làm nhiều cổng khác nhau. Khi một máy tính gửi dữ liệu đến một máy tính khác, dữ liệu sẽ đi từ một cổng thuộc địa chỉ IP này đến một cổng thuộc địa chỉ IP kia.
3. Trong một thời điểm bất kỳ, một cổng chỉ có thể được sử dụng bởi một chương trình.
Giờ, khi bạn đã nắm được những điểm trên, ta hãy cùng nói đến NAT. NAT là viết tắt của Network Address Translation. NAT nhận một địa chỉ IP và, về cơ bản, chia nó ra làm nhiều địa chỉ IP khác nhau.
Ở đây, địa chỉ IP ngoài (external IP address) được chia thành 2 địa chỉ IP nội bộ (internal IP address). Địa chỉ IP thứ 1 (IP Address1) là của gateway. Địa chỉ IP thứ 2 (IP Address2) là của máy tính thứ nhất. Cần chú ý rằng router có 2 địa chỉ IP – 1 địa chỉ IP ngoài và 1 địa chỉ IP nội bộ làm việc như một gateway đối với mỗi máy tính trong mạng.
Trong hình trên, những máy tính trong mạng nội bộ (internal network) chỉ *nhìn thấy* những địa chỉ IP nội bộ. Vì thế những máy tính này ko thể gửi dữ liệu trực tiếp tới một máy tính ngoài mạng mà ko thông qua gateway. Cần nhớ, gateway là địa chỉ IP nội bộ của router. Khi máy tính trong mạng muốn gửi dữ liệu ra ngoài, đầu tiên những dữ liệu đó sẽ được chuyển đến gateway, sau đó router sẽ đưa chúng ra ngoài thông qua địa chỉ IP ngoài. Điều này cũng tương tự như những gì xảy ra trên mạng internet. Một máy tính ngoài mạng sẽ ko thể *thấy* một máy tính trong mạng nội bộ. Chúng chỉ có thể *thấy* và gửi dữ liệu tới router thông qua địa chỉ IP ngoài. Sau đó, router mới quyết định xem nó phải làm gì mới những dữ liệu đó – và NAT đóng vai trò chính trong quá trình này. Thật may mắn là NAT được cấu hình sẵn để làm việc với vài chương trình. Tuy vậy, có những chương trình mà NAT ko được thiết kế để làm việc với, do đó chúng ta phải làm một bước gọi là port forwarding.
Port forwarding cũng khá đơn giản. Khi một máy tính trong mạng internet gửi dữ liệu tới router qua địa chỉ IP ngoài, router cần xác định xem nó sẽ làm gì với dữ liệu đó. Quá trình port forwarding sẽ chỉ ra cho router thấy: Cần gửi dữ liệu tới máy tính nào trong mạng LAN. Khi bạn cài đặt xong các rule cho port forwarding, router sẽ lấy dữ liệu dạng địa chỉ IP ngoài:số thứ tự cổng và gửi dữ liệu đó tới địa chỉ IP nội bộ:số thứ tự cổng. Các rule dành cho port forwarding được cài đặt theo cổng. Vì thế, rule cho cổng mang số 53 sẽ chỉ làm việc cho cổng mang số 53.
Xin nhắc lại: Tại 1 thời điểm, một cổng chỉ có thể được sử dụng bởi một chương trình! Dùng cùng 1 cổng trên 2 máy tính trong mạng nội bộ vào cùng một thời điểm có thể dẫn tới xung đột giữa các rule và làm rối loạn việc truyền dữ liệu. Hầu hết các router đều bắt bạn chỉ ra chính xác địa chỉ IP nội bộ cần forward đến cũng vì lý do này. Còn với những router ko bắt bạn làm việc này, hãy cẩn thận! Rule cho port forwarding chỉ làm việc với một máy tính trong một thời điểm!
2. Tại sao cần phải forward port?
Dữ liệu được truyền tải thông qua một cổng khi bạn đang download. Nếu cổng đó chưa được mở, bạn chỉ có thể kết nối được với những người khác trong swarm (cổng của họ đã mở). Nếu cổng của bạn đã mở rồi, những người khác có thể kết nối với bạn (những người này có thể đã mở hoặc chưa mở cổng). Như vậy, việc mở cổng làm tăng số lượng người kết nối được với bạn và do đó sẽ tăng tốc độ download.

Không có nhận xét nào: