Danh sách duyệt được xây từ các thông báo, và thông báo không phải cấp quyền truy cập. Ai đó thấy tên máy tính xách tay của bạn trong một danh sách từ xa vì một truy vấn multicast đã vượt qua một ranh giới thường chặn nó ở router. Việc vượt qua đó giải thích cả vì sao mục xuất hiện và vì sao gỡ mục không giống với đóng dịch vụ. Hãy xác định bạn thực sự phản đối điều nào trong hai điều này trước khi thay đổi bất cứ thứ gì.

Mục duyệt thực chất là gì

Một bộ trả lời mDNS trên Mac trả lời các truy vấn về những loại dịch vụ mà nó lưu trữ, và câu trả lời mang một tên, một cổng và vài bản ghi văn bản. Máy khách đã hỏi sau đó hiển thị tên đó trong một danh sách. Không có gì trong trao đổi chứng minh một kết nối sẽ thành công, và không có gì trong đó cấp quyền: danh sách là một khẳng định về tên, không phải về truy cập. Chính sự phân biệt đó quyết định bạn nên tắt thứ gì hay ngừng công bố nó.

Các dịch vụ khác nhau đăng ký riêng rẽ, nên một mục biến mất không có nghĩa mọi thông báo đã dừng. Chia sẻ tệp đăng ký một loại, chia sẻ màn hình loại khác, và máy in, thư viện đa phương tiện cùng công cụ nhà phát triển mỗi thứ đăng ký loại của riêng mình. Trước khi coi một công tắc là kiểm soát chính, hãy liệt kê những gì đã đăng ký và tiến trình nào sở hữu nó:

dns-sd -B _smb._tcp
lsof -nP -iUDP:5353

Multicast vẫn ở cục bộ trừ khi có gì đó bắc cầu nó

Multicast DNS gửi tới một nhóm cục bộ theo liên kết trên UDP 5353, và router không chuyển tiếp nhóm đó theo mặc định. Vì vậy một đường hầm định tuyến lưu lượng unicast để lại việc khám phá phía sau, và đó là lý do một Mac trên VPN định tuyến thường vô hình với trang từ xa. Một đường hầm có bắc cầu, hoặc một relay được cấu hình có chủ đích, thay đổi điều đó bằng cách đặt hai đầu vào cùng một miền quảng bá. Bạn có thiết kế nào là thuộc tính của đường hầm, không phải của tên giao thức in trên nó.

Hãy kiểm tra cấu hình máy chủ xem nó bắc cầu một giao diện hay định tuyến một mạng con, vì hai cách cư xử khác nhau ở mọi giao thức phụ thuộc quảng bá. Nếu đường hầm được bắc cầu, hãy chờ đợi nhiều hơn một loại thông báo rò rỉ, kể cả những thứ không ai định công bố. Nếu nó được định tuyến, một mục trong danh sách từ xa có lẽ đến qua relay hoặc qua khám phá dựa trên DNS unicast chứ không qua nhóm multicast. Những đường đó có cách khắc phục khác nhau, và chặn cổng multicast chỉ đóng một trong số đó.

Dừng dịch vụ là ranh giới sạch nhất

Nếu Mac không có việc phục vụ tệp, hãy tắt chia sẻ bằng điều khiển được hỗ trợ thay vì cố ẩn thông báo của nó. Một dịch vụ đã dừng không thể bị kết nối, đoán hay tiếp cận bởi máy khách cũ còn nhớ tên. Tính chất đó khiến nó thành kiểm soát mạnh hơn, và nó không cần sự hợp tác nào của mạng.

Hướng dẫn chia sẻ tệp của Apple mô tả mô hình quyền cho thư mục được chia sẻ, người dùng được phép và truy cập khách, và bảng chia sẻ hiển thị trạng thái hiện tại. Hãy xem lại ba điều này khi dịch vụ thực sự cần, vì một chia sẻ phải tồn tại là một chia sẻ phải được giới hạn phạm vi. Truy cập khách đáng được nhìn riêng, vì nó có thể cho phép kết nối mà không cần thông tin xác thực nào. Sau đó xác nhận dịch vụ lắng nghe trên những giao diện nào, vì một chia sẻ được cung cấp trên mọi giao diện cũng được cung cấp trên đường hầm.

Khi bạn cần dịch vụ nhưng không cần khán giả

Đôi khi việc chia sẻ là chính đáng còn khán giả thì không. Giới hạn dịch vụ cho các nguồn được chấp thuận, để việc khám phá thành kiểm soát riêng và nhỏ hơn, là cách sắp xếp trung thực. Các quy tắc tường lửa, quyền theo người dùng và lắng nghe trên giao diện đúng đều thu hẹp truy cập theo cách một thông báo ẩn không làm được.

Việc đè nén khám phá là bề ngoài theo nghĩa chặt chẽ: dịch vụ vẫn trả lời bất kỳ ai biết tên. Nếu chính việc công bố là vấn đề, hãy giới hạn nó ở lớp mang nó. Trên một mạng bạn quản trị, điều đó nghĩa là quyết định loại dịch vụ nào được vượt ranh giới và cấu hình cầu, relay hoặc bộ lọc cho phù hợp. Sao chép lệnh bộ lọc cầu từ diễn đàn chỉ hiệu quả nếu máy chủ của bạn chạy đúng ngăn xếp và đúng chế độ đường hầm đó, và trên mạng bạn không quản trị thì câu trả lời trung thực là bạn không thể kiểm soát những gì máy khách từ xa ghi nhớ.

Hãy nhìn từ phía xa

Hãy thử từ phía xa chứ không phải từ mạng của chính Mac, và thử một lần duyệt mới chứ không phải danh sách đã lưu đệm. Sau đó thử kết nối trực tiếp tới dịch vụ theo tên và theo địa chỉ, vì hai kết quả trả lời hai câu hỏi khác nhau. Một mục biến mất cùng kết nối thành công nghĩa là bạn đã ẩn một nhãn, còn kết nối thất bại nghĩa là bạn đã đóng một dịch vụ. Bộ đệm làm cả hai phép thử nói dối nếu bạn bỏ qua việc làm mới, nên hãy khởi động lại máy khách.

Ghi lại bạn đã thay đổi gì và nó thuộc kiểm soát nào trong ba: dịch vụ đã dừng, truy cập bị giới hạn hay khám phá bị giới hạn. Khi ai đó báo rằng Mac vẫn hiện ra, ghi chú đó cho bạn biết báo cáo đã cũ hay một dịch vụ khác đang tự thông báo. Phần lớn những bất ngờ ở đây là một đăng ký thứ hai mà không ai nhớ đã bật, không phải kiểm soát hỏng.

Kiểm tra lại các đăng ký còn lại trước khi kết luận thay đổi đã thất bại. Một danh sách ngắn tốt hơn một vòng đoán nữa.

Bài viết liên quan