ทำไม Chromium บายพาส / etc / hosts และ dnsmasq


51

ฉันใช้hostsblockร่วมกับdnsmasqบน Arch ลินุกซ์ในการบล็อกเว็บไซต์บางส่วนหนึ่งของพวกเขาและfacebook.comwww.facebook.com

ฉันรู้ว่าทุกอย่างทำงานได้อย่างถูกต้องเพราะ ping to facebook.com(หรือwww.facebook.com) คืนค่า 127.0.0.1 อย่างง่าย นอกจากนี้ถ้าฉันเข้าถึงเว็บไซต์เหล่านี้จาก Midori จะมีการส่งคืนหน้าเปล่า (นี่เป็นพฤติกรรมที่คาดหวังเนื่องจากฉันใช้kwakd daemon เพื่อกลับสู่หน้าว่างใน localhost)

ดูเหมือนว่า Chromium เท่านั้นที่จะเลี่ยงรายการบล็อกของฉัน การเข้าถึง facebook.com ทำให้ฉันไปที่หน้าแรกของ facebook ได้โดยตรง

หลังจากล้างข้อมูลทุกอย่าง (Ctrl + Shift + Delete) ตั้งแต่ต้นและเริ่ม Chromium ใหม่ฉันได้รับพฤติกรรมที่ต้องการ (= ไม่สามารถเข้าถึง Facebook)

แม้ว่าหลังจากนั้นสักครู่ (ฉันไม่แน่ใจว่าอะไรเป็นสาเหตุของสิ่งนี้) Chromium เพิกเฉย DNS dnsmasq ในพื้นที่ของฉันอีกครั้งและเข้าถึงหน้าแรกของ Facebook ได้สำเร็จ

ฉันอ่านบางอย่างเกี่ยวกับการแคชและดึงข้อมูลการสืบค้น DNS ของ Chromium ล่วงหน้า แต่ฉันไม่แน่ใจว่าจะปิดใช้งานอย่างไร

คำถามคือทำไม Chromium บายพาส DNS ท้องถิ่นของฉันและฉันจะทำอย่างไรเพื่อหยุดมัน


2
คุณใช้พรอกซีหรือเปล่า? เมื่อคุณใช้พร็อกซีคำขอ DNS จะถูกดำเนินการบนพร็อกซี
Zoredache

ไม่ฉันไม่ได้ใช้พร็อกซีเลย Hostblock ไม่จำเป็นต้องใช้
thiagowfx

ฉันลองใช้วิธีการของคำตอบด้านล่าง แต่ Chromium ยังคงได้รับที่อยู่ IP ... มี Chromecast บางอันอยู่หรือไม่
Geremia

คำตอบ:


41

การอ้างอิงส่วนใหญ่เกี่ยวกับเรื่องนี้เป็นเรื่องเก่า หากคุณมี Chromium รุ่นเก่าให้ทำตามคำตอบedvinas.me

สำหรับ Chromium รุ่นปัจจุบัน (ในขณะที่โพสต์นี้ถูกเขียน: 33) นี่คือสิ่งที่คุณควรทำ:

  1. ไปที่ chrome://settings
  2. คลิกที่ "แสดงการตั้งค่าขั้นสูง ... "
  3. ไม่เลือกคาดการณ์การทำงานเครือข่ายเพื่อปรับปรุงประสิทธิภาพในการโหลดหน้ากล่อง
  4. ตรวจสอบว่าการโหลดล่วงหน้า DNS chrome://dnsถูกปิดใช้งานจริงโดยไปที่ คุณควรเห็นบางสิ่งเช่นDNS pre-resolution และการเชื่อมต่อ TCP ล่วงหน้าถูกปิดใช้งาน หากการดึงข้อมูลล่วงหน้าไม่ได้ปิดใช้งานคุณจะเห็นบางตารางที่นั่น

ปรับปรุง

สำหรับ Chrome รุ่นใหม่กว่า (ณ เวลาที่อัปเดต: 55) รายการที่สามจะใช้คำว่า: ใช้บริการการคาดคะเนเพื่อโหลดหน้าเว็บได้เร็วขึ้น

การอ้างอิง


27

อัปเดตคำตอบ

ตรวจสอบให้แน่ใจว่าคุณล้างแคชของ Chrome พิมพ์สิ่งนี้ในแถบที่อยู่:

chrome://net-internals/#dns

จากนั้นคลิกClear host cacheปุ่ม

คำตอบเก่า

Chromium ใช้ DNS ภายในของ Google เป็นค่าเริ่มต้น (8.8.8.8 และ 8.8.4.4)

หากต้องการปิดใช้งาน:

  1. คลิกที่เมนูเครื่องมือ (ไอคอนประแจเล็ก ๆ ) จากนั้นไปที่ตัวเลือก

  2. คลิกที่แท็บ Under the Hood

    3 ในส่วน“ ข้อมูลส่วนบุคคล” ให้ยกเลิกการเลือกช่องทำเครื่องหมายสำหรับการดึงข้อมูล DNS ล่วงหน้าเพื่อปรับปรุงประสิทธิภาพการโหลดหน้าเว็บ

    4 คลิกที่ปุ่มปิด

    5 รีเฟรชเพื่อโหลดหน้าเว็บซ้ำ


1
สิ่งที่คุณพูดจะใช้กับ Chromium / Google Chrome เวอร์ชันเก่าเท่านั้น เวอร์ชันที่ใหม่กว่าไม่มีการตั้งค่านี้อีกต่อไป (ไม่ใช่ "Under the Hood") อาจเป็นการตั้งค่าใหม่คือ "คาดการณ์การกระทำของเครือข่ายเพื่อปรับปรุงประสิทธิภาพการโหลดหน้าเว็บ" หรือไม่ น่าเศร้าที่นี่ไม่ได้พูดถึง DNS ใด ๆ ดังนั้นฉันไม่แน่ใจ
thiagowfx

ฉันได้อัปเดตคำตอบเกี่ยวกับวิธีล้างแคช DNS ของ Chromium ได้โปรดดูฉันหวังว่ามันจะช่วย
phoops

ขอบคุณ! คำตอบใหม่ของคุณคือวิธีที่ดีที่สุดในการล้าง DNS ที่บันทึกไว้ (แทนที่จะล้างทุกอย่างใน Ctrl + Shift + Delete) แต่เพื่อกำจัดปัญหาอย่างถาวรฉันคิดว่าคำตอบของฉันเหมาะสมกว่า (ฉันยังต้องทดสอบอีกเล็กน้อยเพื่อความแน่ใจ)
thiagowfx

ดีถ้าคุณเพียงแค่ปิดการใช้งานโดยไม่ล้างแคช - มันจะไม่ทำงานจนกว่าแคชจะหมดอายุ หลังจากล้างแคชแล้วฉันไม่คิดว่า Chromium ควรสามารถดึงข้อมูล IP จริงล่วงหน้าได้ แม้ว่าการดึงข้อมูลล่วงหน้าจะเปิดขึ้นมาจะเป็นการดึงค่าที่ถูกบล็อกไว้ล่วงหน้า อย่างไรก็ตามอย่างน้อยดูเหมือนว่าคุณได้แยกออก
phoops

2
"chrome: // net-internals / # dns" -> clear ไม่ทำงาน
Totty.js

2

ความเป็นไปได้อีกอย่างหนึ่งที่คลุมเครือคือระบบของคุณถูกตั้งค่าให้ใช้ไฟล์พร็อกซีอัตโนมัติ * .pac โดยปกติจะเป็นกรณีนี้หากคุณได้รับคอมพิวเตอร์ในสภาพแวดล้อมขององค์กรและไฟล์ * .pac แจ้งให้เบราว์เซอร์ของคุณผ่านพร็อกซีเพื่อแก้ไข URL สิ่งนี้สำคัญกว่าไฟล์ / etc / hosts ของคุณและหากไฟล์ * .pac มีกฎในการส่งคืน PROXY หากไม่มีสิ่งใดตรงกันจะปรากฏว่า Chrome ไม่เคารพโฮสต์ / etc / โดยปกติจะเป็นกรณีนี้หากบรรทัดคำสั่งของคุณทำงานตามที่คาดไว้เช่นขุด ping เป็นต้น

หากคุณลองใช้วิธีแก้ไขปัญหาอื่นและไม่สามารถใช้งานได้ให้ตรวจสอบเพื่อดูว่าคุณไม่มีการตั้งค่าพร็อกซีอัตโนมัติที่ Chrome ใช้อยู่


1
สิ่งนี้ได้ผลสำหรับฉัน!
MediumOne

-2

หากคุณกำลังใช้ส่วนขยาย VPN Proxyสำหรับ Google Chrome (เช่นBetternet ) คุณอาจประสบปัญหานี้ การปิดใช้งานส่วนขยายแก้ปัญหาได้

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.