Làm cách nào để mDNS hoạt động cho Chrome trên Android?


34

Có cách nào để kết nối với http: // milil.l.local / bằng Chrome trên Android hoặc có một trình duyệt khác hoạt động không?

Tôi đi từ mạng này sang mạng khác với máy tính xách tay và điện thoại của tôi và tôi thường phải kết nối điện thoại với một trang web trên máy tính xách tay của mình. Với Safari trên iPhone, tôi chỉ cần sử dụng http: // myl mỏi.local / (thường nhấn tải lại trên cửa sổ trình duyệt đang mở), nhưng với thiết bị Android của tôi, tôi luôn phải tìm ra IP hiện tại của máy tính xách tay của mình. và kết nối với nó (Tôi không kiểm soát nhiều mạng tôi đang truy cập và dường như chúng chưa bao giờ có DNS tích hợp với DHCP).

Tôi đã tìm kiếm một câu trả lời và có vẻ như hầu hết mọi người chỉ đơn giản là hack xung quanh các vấn đề bằng DNS tĩnh hoặc họ kiểm soát DHCP và DNS, cả hai đều không áp dụng cho tình huống của tôi. Ngoài ra, tôi thấy các thư viện mã để hỗ trợ mDNS (và các công cụ zeroconf khác) trong một ứng dụng Android cụ thể, vì vậy có lẽ có Chrome bổ sung trên đó hoặc một số trình duyệt khác hỗ trợ nó?

Ngoài ra, có bất kỳ từ chính thức nào trên thiết bị hỗ trợ rộng rãi cho mDNS và tên miền .local trên Android không? Tôi cũng gặp khó khăn khi tìm thấy điều đó.

Câu trả lời:


17

Tôi không nghĩ vậy.

Trình phân giải DNS hệ thống trong các nền tảng của Apple có hỗ trợ tích hợp cho mDNS, do đó, gần như bất kỳ ứng dụng nào cũng kết thúc bằng cách sử dụng getaddrinfochức năng cốt lõi và hỗ trợ mDNS trong URL và tên máy chủ và không có gì.

Trên Android và các nền tảng khác, ngay cả khi có một daemon DNS Multicast đang chạy và các thư viện có sẵn để sử dụng nó, thì việc tra cứu DNS "điển hình" cũng không có . Vì vậy, trong khi các bản phát hành Android gần đây cung cấp cho các nhà phát triển một số tính năng mDNS như một phần của nền tảng, hầu hết không đi theo cách của họ (như họ cần phải làm) để sử dụng chúng.

Thật là một người lập dị, nhưng AFAIK không có gì thiếu sót trong việc xây dựng bản Android tùy chỉnh của riêng bạn (hoặc thuyết phục Google thay đổi nó) có thể thực sự giải quyết điều này.


4
Điều đó thật khập khiễng! Phải mất 15 năm để linux nói chuyện chính xác với windows và mac, bây giờ chúng ta lại thấy câu chuyện tương tự. mDNS không được hỗ trợ trên Android. AirPrint không được hỗ trợ trên Android. Thôi nào, khả năng tương tác phải trở thành quy luật!
Philipp

7
Tôi đã gửi một lỗi chống lại dự án Chromium. Vui lòng gắn dấu sao (không nhận được +1 bình luận) nếu bạn gặp phải vấn đề này và muốn sửa nó. crorms.com/405925
pwnall

1

Đó không phải là lỗi của trình duyệt, nhưng về cách Android xử lý DHCP: nó chỉ đơn giản bỏ qua máy chủ DNS được cung cấp và dính vào DNS Google được cấu hình sẵn của nó - tất nhiên không biết tên máy chủ cục bộ của bạn. Vì vậy, đây là cách để làm việc xung quanh này:

  1. Mở Cài đặt
  2. Điều hướng đến WiFi
  3. Điều hướng đến mục mạng WiFi của bạn.
  4. Nhấn vào mục nhập, chọn để chỉnh sửa.
  5. Kích hoạt cài đặt Nâng cao
  6. Chuyển từ DHCP sang tĩnh và thay thế máy chủ DNS đầu tiên (thường 8.8.8.8) bằng máy chủ của riêng bạn
  7. Tiết kiệm

(tùy chọn bạn có thể thử chuyển trở lại DHCP sau khi đã thay đổi máy chủ DNS và xem liệu cái sau có được giữ lại không)

Bây giờ, Android nên sử dụng máy chủ DNS của bạn trước và chỉ chuyển sang thứ cấp nếu bạn không thể giải quyết. Điều đó có nghĩa là, "myl mỏi.local" của bạn nên được tìm thấy ngay bây giờ - từ Chrome hoặc bất kỳ trình duyệt nào khác và bất kỳ ứng dụng nào khác.

Trước khi bạn hỏi: Cài đặt này (như được mô tả ở trên) sẽ chỉ áp dụng cho WiFi AP đã sửa đổi. Vì vậy, không phải lo lắng bạn có thể ảnh hưởng đến bất kỳ khác. Nếu bất cứ điều gì tự nhiên, bạn bất cứ lúc nào có thể xóa AP và tạo lại nó.


15
Chỉ cần làm rõ; câu hỏi ban đầu không thực sự là về việc sử dụng máy chủ DNS cục bộ, mà sử dụng mDNS (còn gọi là Bonjour) cùng với tên miền ".local" đặc biệt mà trên một số hệ thống được thiết lập để phát hành các truy vấn mDNS thay vì DNS.
Jules

Khi tôi đặt địa chỉ IP tĩnh, tôi không thể hiểu được "mạng không thể truy cập được" trên tất cả các thiết bị trên mạng con cục bộ.
Michael
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.