Tạo chương trình P2P trên mạng sử dụng router băng thông rộng

Nếu bạn đã xây dựng một mạng bằng router băng thông rộng, router này sẽ tự động ngăn chặn bất kỳ một chương trình chia sẻ file ngang hàng nào (eMule, Shareaza,…) làm việc trong mạng của bạn: có thể nó sẽ hiển thị “firewalled” hoặc “low ID”. Hệ quả là bạn sẽ phải chịu tốc độ truyền tải thấp hơn và cũng không thể khởi tạo việc download file từ người dùng cũng bị “firewalled”. Trong hướng dẫn này chúng tôi sẽ giới thiệu cho các bạn cách cấu hình router sao cho cho phép các chương trình chia sẻ file ngang hàng có khả năng làm việc.

Vấn đề sở dĩ xảy ra như vậy là vì các chương trình ngang hàng (gọi tắt là P2P) sử dụng các cổng non-standard để làm việc. Do các router băng thông rộng làm việc như một tường lửa nên chúng sẽ khóa tất cả các kết nối có sử dụng các cổng non-standard. Chính vì vậy theo lý thuyết nó sẽ là vấn đề mở cổng để cho các chương trình P2P có thể sử dụng panel điều khiển router băng thông rộng để giải quyết vấn đề này. Tuy vậy điều này không đơn giản. Thông thường bằng việc mở đơn các cổng một cách đơn giản trên các chương trình tường lửa, bạn có thể truy cập vào máy chủ trên Internet bằng các cổng đó, nhưng nó không cho phép các máy tính khác trên Internet có thể truy cập vào máy tính của bạn. Nói theo cách khác, khi tường lửa cho phép các kết nối gửi ra (outgoing) thì nó vẫn hoạt động một cách bình thường và khóa các kết nối gửi vào (incoming). Lưu ý rằng khi sử dụng các chương trình P2P, máy tính của bạn sẽ làm việc như một máy chủ, phân phối file (và các phần của file không đầy đủ) đến người dùng khác.

Trong hướng dẫn này chúng tôi sẽ sử dụng eMule với tư cách là ví dụ. Ý tưởng cơ bản được thể hiện trong hướng dẫn này là đều như vậy cho các chương trình khác; chỉ có một thứ khác là vị trí chính xác của các phần cần thay đổi trên chương trình. Bạn sẽ có thể áp dụng hướng dẫn này đối với các chương trình khác một cách nhanh chóng.

Đầu tiên chúng ta hãy xem xét một chút đến vấn đề. Sau khi download và cài đặt eMule trên máy, nhấn vào “Connect”, khi đó bạn sẽ nhận được trạng thái “low ID”, như thể hiện trong hình 1 (theo mũi tên đỏ). (Với lý do bảo mật nên chúng tôi đã xóa địa chỉ IP trên màn hình này).


Hình 1: Trạng thái low ID với eMule

Để kiểm tra kết nối của bạn, vào to Options > Connection và kích vào Test Ports. Thao tác này sẽ kiểm tra kết nối để kiểm tra xem mọi người trên Internet có thể truy cập vào các file trong máy tính của bạn hay không. Do gặp phải vấn đề low ID nên kết quả sẽ không khác hơn so với hình thể hiện trong hình 2.


Hình 2: Kiểm tra kết nối đã bị thất bại

Mục tiêu trong hướng dẫn này là làm cho máy tính của bạn qua được bài test này, như vậy sẽ có được trạng thái high ID trong eMule.

Thứ đầu tiên mà chúng ta nên thực hiện đó là cấu hình lại eMule để sử dụng một tập các cổng TCP/IP khác. Trong phiên bản eMule ví dụ trong bài đã cài đặt, nó đang sử dụng các cổng 19034 cho giao thức TCP và 17157 cho giao thức UDP. Bạn cần thay đổi thành 4660 cho giao thức TCP và 4670 cho giao thức UDP. Thao tác này được thực hiện trên trong Options > Connection. Trong hình 3, bạn có thể thấy được eMule đã được cấu hình như thế nào và trong hình 4 eMule đã được cấu hình đúng. Không quên kích “Apply” sau khi thay đổi cấu hình này. Thoát eMule.


Hình 3: Các cổng eMule đang sử dụng


Hình 4: eMule đã được cấu hình đúng

Nếu bạn sử dụng một chương trình P2P khác thì bạn nên vào menu cấu hình của nó và thay đổi các cổng TCP và UDP mặc định thành các số đã gợi ý trong bài với mục đích tạo sự dễ dàng hơn để theo dõi tiếp hướng dẫn này.

Bây giờ chúng ta cần cấu hình tường lửa bên trong của Windows XP.

Cấu hình tường lửa của Windows XP

Windows XP SP2 có một tường lửa bên trong có thể khóa các kết nối P2P (nếu bạn không có SP2 đã được cài đặt thì sẽ không có Windows Firewall). Chính vì vậy chúng tôi phải cấu hình Windows XP để mở các cổng đã sử dụng. Nếu bạn có một chương trình tường lửa khác đã được cài đặt như ZoneAlarm hoặc Norton Personal Firewall, thìcần phải tạo một thủ tục trên chương trình tường lửa của mình. Sau khi chạy chương trình P2P lần đầu tiên, bạn có thể mở khóa nó trên Windows Firewall (bằng cách kích vào Unblock trên màn hình như trong hình 5 bên dưới) nhưng tất cả điều đó là chưa đủ.


Hình 5: Windows hỏi có muốn mở khóa chương trình P2P khi chạy nó lần đầu tiên

Mở Control Panel > Windows Firewall và kích vào tab Exceptions. Chương trình P2P của bạn có thể sẽ được liệt kê ở đây (có thể như trong hình 6), eMule đã được liệt kê. Nếu không, bạn kích vào Add program và chọn chương trình P2P của mình.


Hình 6: Cấu hình tường lửa Windows

Thậm chí nếu chương trình P2P của bạn đã được liệt kê trong tab Windows Firewall Exceptions thì cũng vẫn phải kích vào Add port. Sau đó đặt tên cho nguyên tắc này (ví dụ như “eMule TCP Port”), thêm số cổng TCP mà eMule sử dụng (4660), chọn “TCP” và kích OK (xem hình 7).


Hình 7: Thêm cổng TCP đã được sử dụng bởi eMule.

Tiếp tục kích một lần nữa vào Add port, đặt tên cho nguyên tắc này (ví dụ như “eMule UDP Port”), thêm số cổng UDP mà eMule sử dụng (4670), chọn “UDP” và kích OK (xem hình 8).


Hình 8: Thêm cổng UDP đã được sử dụng bởi eMule

Những nguyên tắc mới lúc này sẽ được liệt kê trong tab Windows Firewall Exceptions, xem hình 9.


Hình 9: Những ngoại lệ của Windows Firewall

Lúc này kích tab Advanced. Màn hình thể hiện trong hình 10 sẽ được bật ra. Kích vào nút Settings đầu tiên trong trường "Network Connection Settings".


Hình 10: Windows Firewall

Như những gì bạn thấy trong hình 11, ở đây sẽ không có cấu hình nào cho chương trình P2P của bạn, chính vì vậy chúng ta cần phải thêm vào hai cấu hình ở đây, mỗi một cấu hình cho một giao thức (TCP và UDP).


Hình 11: Các thiết lập nâng cao của tường lửa

Kích Add, sau đó nhập vào tên cho cấu hình này (ví dụ như “eMule TCP Port”), tên máy tính hoặc địa chỉ IP máy tính của bạn đang sử dụng, số cổng TCP (4660) trong cả hai trường “External Port number” và “Internet port number”, kích TCP và kích OK. Trong trường hợp bài này, chúng tôi đã sử dụng tên máy tính là “Gabe”.

Nếu bạn không biết tên máy tính của mình, hãy vào Control Panel > System > chọn tab Computer Name. Nó sẽ hiển thị tên máy tính của bạn ở đây. Nếu bạn thích sử dụng địa chỉ IP của máy tính và không biết nó thì bạn hãy kích vào Start > Run > Cmd sau đó đánh Ipconfig và nhấn Enter. Lệnh này sẽ liệt kê địa chỉ IP máy tính mà bạn đang sử dụng. Chúng tôi biết rằng địa chỉ IP máy tính của bạn có thể thay đổi nhưng sẽ cấu hình router để gán cùng một địa chỉ IP ở phần dưới, chính vì vậy bạn không lo về vấn đề này.


Hình 12: Thêm cổng TCP đã được sử dụng

Bây giờ lặp lại quá trình cho cổng UDP: kích Add, sau đó nhập vào tên cho cấu hình này (ví dụ như “eMule UDP Port”), tên máy tính hoặc địa chỉ IP máy tính của bạn đang sử dụng, số cổng UDP (4670) trong cả hai trường “External Port number” và “Internet port number”, tích UDP và kích OK.


Hình 13: Thêm cổng UDP đã được sử dụng

Lúc này bạn sẽ thấy cả hai cấu hình đã chọn trên tab “Windows Firewall advanced settings”, xem trong hình 14.


Hình 14: Các cấu hình sử dụng eMule hiện trong chế độ sử dụng

Kích OK và lúc này bạn đã cấu hình xong Windows Firewall

Bước tiếp theo chúng ta sẽ cấu hình router.

Cấu hình router

Tên các tùy chọn cho cấu hình router của bạn sẽ thay đổi phụ thuộc vào loại router và model của nó. Trong các ví dụ của bài, chúng tôi sử dụng router D-Link DI-524.

Thứ đầu tiên mà bạn cần phải thực hiện ở đây là vào panel điều khiển của router. Nếu bạn không biết cách vào hãy đọc hướng dẫn của chúng tôi về thiết lập một mạng bằng router băng thông rộng.

Ở đây bạn cần tìm tùy chọn có tên gọi là “Virtual Server” hoặc tương tự. Trong router này, tùy chọn này là tùy chọn đầu tiên nằm trong phần “Advanced”, xem trong hình 15.


Hình 15: Tùy chọn máy chủ ảo

Ở đây bạn cần chọn “Enable”, đặt tên cho cấu hình này (ví dụ như “eMule TCP Port”), nhập vào địa chỉ IP máy tính của bạn (hoặc máy tính đang chạy chương trình P2P), tích TCP, nhập vào số cổng TCP (4660) trong cả hai trường “Private Port” và “Public Port” (các trường này cũng có tên gọi tương ứng là “Internal Port” và “External Port”), chọn Always và kích Apply. Nếu bạn không biết địa chỉ IP máy tính của mình, hãy kích Start > Run > Cmd sau đó đánh vào Ipconfig, nhấn Enter. Lệnh này sẽ liệt kê địa chỉ IP mà máy tính bạn đang sử dụng.


Hình 16: Mở cổng TCP đã được sử dụng bởi eMule

Lặp lại quá trình trên với cổng UDP: chọn “Enable”, đặt tên cho cấu hình này (ví dụ như “eMule UDP Port”), nhập vào địa chỉ IP máy tính của bạn (hoặc máy tính đang chạy chương trình P2P), tích UDP , nhập vào số cổng UDP (4670) trong cả hai trường “Private Port” và “Public Port” (các trường này cũng có tên gọi tương ứng là “Internal Port” và “External Port”), chọn Always và kích Apply.


Hình 17: Mở cổng UDP đã được sử dụng bởi eMule

Lúc này bạn sẽ thấy ở đây hai nguyên tắc mới đã được thêm và kích hoạt trong phần Virtual Server của router, xem trong hình 18.


Hình 18: Các cổng TCP và UDP của eMule đã được mở trên router của bạn

Lúc này bạn cần làm cho router luôn gán cùng một địa chỉ IP cho máy tính, bằng không cấu hình sẽ dừng làm việc nếu router của bạn gán sang một địa chỉ IP khác ở thời điểm tiếp theo khi bật nó.

Bạn cần tìm cấu hình DHCP trong panel điều khiển router của bạn. Trong router của bài này thì nó nằm ở Home > DHCP. Ở đây bạn có thể tìm thấy cấu hình có tên “Static DHCP”.


Hình 19: Cấu hình DHCP

Việc cấu hình router của bài luôn luôn gán cùng một địa chỉ IP rất dễ dàng. Trong hộp danh sách có tên “DHCP Client” có một danh sách tất cả các máy tính đã kết nối với router. Chính vì vậy rất dễ dàng cho việc chọn máy tính trong danh sách đó (máy tính có tên “Gabe”), kích “Clone”, chọn Enable sau đó kích Apply.


Hình 20: Cấu hình router luôn gán cùng địa chỉ IP cho máy tính của bạn

Với cấu hình này, máy tính của bạn sẽ luôn có cùng một địa chỉ IP, chính vì vậy chúng ta sẽ không mất các cấu hình đã thực hiện trước đó.

Bây giờ chính là lúc kiểm tra xem mọi thứ đã được cấu hình đúng chưa. Bạn vào chương trình P2P, kích Connect và sẽ nhận được trạng thái “open” hoặc high ID (thay cho “firewalled”), ở mũi tên đỏ trong hình 21. Trong eMule, chúng tôi có thể chạy lại test bên trong của nó (Option > Connection > Test Port) để xem cấu hình của mình đã được thực hiện hay chưa, xem hình 22.


Hình 21: Trạng thái high ID với eMule


Hình 22: Kiểm tra kết nối thành công

Thứ Sáu, 11/04/2008 14:36
31 👨 4.270
0 Bình luận
Sắp xếp theo