Chrome có sử dụng máy chủ DNS khác với HĐH không?


11

Tôi đang chạy Chrome trên Linux. Tôi có DNS cục bộ để phân giải * .myname.com thành 127.0.0.2 (Tôi nhập "host anything.myname.com" hoặc "host myname.com" và tôi thấy địa chỉ chính xác). Tuy nhiên, trong Chrome khi tôi nhập "myname.com", nó được chuyển hướng đến "www.myname.com" và giải quyết trang web "thực" mà tôi không muốn.

Chỉ khi tôi nhập "test.myname.com" chứ không phải "www.myname.com", Chrome mới giải quyết chính xác thành 127.0.0.2. Tôi đoán Chrome đang cố gắng làm điều thú vị với www.anything.com và bất cứ điều gì.com.

Làm thế nào để khắc phục nó?

PS: DNS cục bộ tôi đang sử dụng là dnsmasq. Nếu tôi rõ ràng đặt myname.com vào / etc / hosts thì Chrome sẽ phân giải chính xác thành 127.0.0.2, nhưng tôi không thể sử dụng ký tự đại diện trong / etc / hosts.

PPS: Tôi có thể xác nhận tại chrome: // net-internals / # dns rằng Chrome chính xác myname.com và www.myname.com vào IP công khai thực sự.

Câu trả lời:


6

Trên thực tế, Chrome đã sử dụng máy khách DNS riêng của mình để nói chuyện với nhiều máy chủ DNS (DNS cục bộ, DNS bộ định tuyến, DNS bộ định tuyến trong IPv6). Tôi truy cập chrome: // flags và tắt "DNS không đồng bộ tích hợp". Bây giờ nó hoạt động.


2
Cờ "DNS không đồng bộ tích hợp" đã bị xóa khỏi Google Chrome, do đó vô hiệu hóa "sửa lỗi" cho việc này. chromium.googlesource.com/chromium/src/+/... (từ superuser.com/a/887191/109126 )
jcisio

5
Tùy chọn này đã bị xóa khỏi Chrome, xóa câu trả lời để tránh nhầm lẫn hoặc tải xuống: D
sorin

1
Vẫn còn một số loại vấn đề ở đây. Tôi đang sử dụng Chrome 56 trên Linux Mint và phải mất vài phút để giải quyết địa chỉ sau khi kết nối với VPN. Firefox làm điều đó ngay lập tức. Dường như Chrome mất một lúc để thấy những thay đổi /etc/resolv.conf.
orodbhen

1
Nó vẫn còn hiệu lực trong Chrome dành cho Android. Tùy chọn này được gọi là "Trình phân giải DNS Async" (chrome: // flags / # enable-async-dns)
MaxChinni

1
không có tùy chọn nào như vậy trong 69+ và vô hiệu hóa chrome: // flags / # enable-new-preconnectect (đề cập DNS) không giúp ích
vladkras

1

Bạn có thể thay đổi cài đặt proxy của mình và buộc nó sử dụng địa chỉ bạn muốn.

Mở một tệp mới, với phần mở rộng .pac, các tệp đó được hệ thống sử dụng để xác định proxy, sao chép tệp này vào nội dung của tệp:

function FindProxyForURL(url, host) {
    if (host=='www.myname.com' || host=='myname.com'){
        return 'PROXY 127.0.0.2';
    }
    // All other domains should connect directly without a proxy
    return "DIRECT";
}

đi tới cài đặt proxy chrome và trong "url cho cấu hình proxy tự động", nhập đường dẫn đến tệp đó.

không cần phải có máy chủ DNS, bạn có thể chuyển hướng nó đến các cổng khác nhau trên máy và bạn có thể lập trình nó cho nhu cầu của mình.


1
Tôi đã sử dụng nó khi tôi sử dụng Mac, vì trong OS XI có thể sử dụng tệp .pac cho toàn hệ thống. Không có trong Linux AFAIK (nó không hoạt động với wget, curl, v.v.).
jcisio

bạn có cái gì (tôi có kubfox và nó đang hoạt động)
Ohad Cohen

Archlinux + KDE. Tôi chỉ không tin rằng cài đặt Chrome có thể thay đổi hành vi của hệ điều hành trong bảng điều khiển.
jcisio

cài đặt proxy chrome chỉ mở cài đặt proxy hệ thống
Ohad Cohen

Cảm ơn, tôi vừa thử nghiệm với xubfox trong netbook của tôi. Nó không thể mở cài đặt proxy systme (trang chrome: // linux-proxy-config / đã báo lỗi). Tôi sẽ thử với Archlinux của tôi sau.
jcisio
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.