Bất cứ khi nào một ứng dụng muốn tự động truy cập qua mạng, nó sẽ yêu cầu một cổng TCP/IP, nghĩa là cổng đó không thể được sử dụng bởi bất kỳ ứng dụng nào khác. Vậy làm thế nào để kiểm tra các cổng đang mở để xem ứng dụng nào đang sử dụng nó?
Cổng hoạt động như thế nào?
Địa chỉ IP chỉ định một máy tính—hoặc thiết bị mạng khác—trên mạng. Khi một thiết bị gửi lưu lượng đến một thiết bị khác, địa chỉ IP được sử dụng để định tuyến lưu lượng đó đến đúng nơi. Khi lưu lượng đến đúng nơi, thiết bị cần biết ứng dụng hoặc dịch vụ nào sẽ gửi lưu lượng đến. Đó chính là lúc cổng phát huy tác dụng.
Nếu địa chỉ IP giống như địa chỉ đường phố trên một lá thư, thì cổng sẽ giống như tên của người nhận thư tại nơi cư trú đó. Thông thường, bạn không cần phải lo lắng về cổng. Nhưng thỉnh thoảng, bạn có thể gặp một ứng dụng được thiết lập để lắng nghe lưu lượng trên cùng một cổng mà một ứng dụng khác đã sử dụng. Trong trường hợp đó, bạn sẽ cần xác định ứng dụng nào đã sử dụng cổng đó.
Có nhiều cách để biết ứng dụng nào bị khóa cổng, nhưng chúng tôi sẽ hướng dẫn bạn một vài cách tích hợp sẵn sử dụng Command Prompt, PowerShell hoặc Terminal, sau đó giới thiệu cho bạn một ứng dụng miễn phí tuyệt vời giúp việc này trở nên dễ dàng hơn. Tất cả các phương pháp này đều có thể hoạt động bất kể bạn sử dụng phiên bản Windows nào.
Sử dụng Công cụ Gốc của Windows để Xem Cổng nào đang xử lý thông tin gì
Chúng tôi có hai lệnh để giới thiệu cho bạn. Lệnh đầu tiên liệt kê các cổng đang hoạt động cùng với tên của tiến trình đang sử dụng chúng. Trong hầu hết trường hợp, lệnh đó sẽ hoạt động tốt. Tuy nhiên, đôi khi, tên tiến trình sẽ không giúp bạn xác định ứng dụng hoặc dịch vụ nào thực sự bị khóa cổng. Trong những trường hợp đó, bạn sẽ cần liệt kê các cổng đang hoạt động cùng với số nhận dạng tiến trình của chúng và sau đó tra cứu các tiến trình đó trong Trình quản lý Tác vụ.
Tùy chọn 1: Xem Cổng Sử dụng cùng với Tên Tiến trình
Trước tiên, bạn cần mở Terminal (cả Powershell và Command Prompt đều hoạt động) ở chế độ quản trị viên. Nhấn nút Start, sau đó nhập terminal vào hộp tìm kiếm. Khi Terminal xuất hiện trong kết quả, hãy nhấp vào “Run as Administrator” ở bên phải.

Trong Terminal, nhập hoặc dán lệnh sau rồi nhấn Enter:
netstat -ab
Sau khi nhấn Enter, kết quả có thể mất một hoặc hai phút để hiển thị đầy đủ, vì vậy hãy kiên nhẫn. Cuộn qua danh sách để tìm cổng (được liệt kê sau dấu hai chấm bên phải địa chỉ IP cục bộ) và bạn sẽ thấy tên tiến trình được liệt kê bên dưới dòng đó.
Ví dụ, ở đây, bạn có thể thấy WhatsApp đang sử dụng nhiều cổng từ 53507 đến 53512. Điều đó không có gì đáng ngạc nhiên – rất nhiều ứng dụng sẽ sử dụng nhiều kết nối như vậy.

Tùy chọn hai: Xem sử dụng cổng cùng với mã ID
Nếu tên của quy trình cho số cổng bạn đang tìm kiếm khiến việc xác định ứng dụng liên quan trở nên khó khăn, bạn có thể thử phiên bản lệnh hiển thị mã định danh quy trình (PID) thay vì tên. Nhập code sau vào Command Promt rồi nhấn Enter:
netstat -aon
Cột ở phía bên phải liệt kê các PID, vì vậy chỉ cần tìm PID được liên kết với cổng mà bạn đang cố gắng khắc phục sự cố.

Nhấn Ctrl+Shift+Esc để mở Task Manager. Hoặc, bạn có thể mở Task Manager bằng cách nhấp chuột phải vào bất kỳ khoảng trống nào trên thanh tác vụ và chọn “Task Manager”.
Nếu bạn đang sử dụng Windows 10 hoặc 11, hãy chuyển sang tab “Details” trong Task Manager.
Sắp xếp danh sách các tiến trình theo cột “PID” và tìm PID được liên kết với cổng bạn đang kiểm tra. Bạn có thể biết thêm về ứng dụng hoặc dịch vụ nào đang chiếm dụng cổng bằng cách xem cột mô tả.

Bạn cũng có thể sử dụng thanh tìm kiếm ở trên cùng nếu bạn có danh sách dài để cuộn qua.
Nếu bạn không thể xác định được ứng dụng là gì, hãy nhấp chuột phải vào tiến trình và chọn “Open file location”. Vị trí của tệp có thể sẽ cho bạn manh mối về ứng dụng liên quan. Bạn cũng có thể nhấn “Search Online”, mặc dù kết quả sẽ không chính xác hoàn toàn, tùy thuộc vào tiến trình bạn đang tìm kiếm.

Bạn cũng có thể sử dụng tùy chọn End task hoặc Chuyển đến Dịch vụ để kiểm soát hoặc dừng tiến trình.
Sử dụng NirSoft CurrPorts để Xem Những cổng nào đang chạy những gì
Nếu bạn không thực sự quen thuộc với Command Promt—hoặc bạn muốn sử dụng một tiện ích đơn giản để thực hiện tất cả những điều này tôi khuyên bạn nên sử dụng tiện ích CurrPorts miễn phí tuyệt vời của NirSoft. Hãy tải xuống công cụ. Chỉ cần đảm bảo bạn tải đúng phiên bản (phiên bản thông thường dành cho Windows 32-bit và phiên bản x64 dành cho Windows 64-bit). Đây là ứng dụng di động, vì vậy bạn không cần cài đặt. Chỉ cần giải nén thư mục tải xuống và chạy tệp thực thi.
Trong cửa sổ CurrPorts, sắp xếp theo cột “Local Port”, tìm cổng bạn đang điều tra và bạn có thể thấy mọi thứ—tên tiến trình, PID, cổng, đường dẫn đầy đủ đến tiến trình, v.v.

Để dễ dàng hơn nữa, hãy nhấp đúp vào bất kỳ quy trình nào để xem mọi chi tiết trong một cửa sổ.

Khi bạn đã xác định được ứng dụng hoặc dịch vụ nào đang chiếm dụng cổng mà bạn đang tìm hiểu, việc xử lý sẽ tùy thuộc vào bạn. Nếu đó là ứng dụng, bạn có thể có tùy chọn chỉ định một số cổng khác. Nếu đó là dịch vụ—hoặc bạn không có tùy chọn chỉ định một số cổng khác—bạn có thể sẽ phải dừng dịch vụ hoặc xóa ứng dụng.

