ฉันจะล้างแคช DNS ของฉันบนโทรศัพท์ Android ของฉันได้อย่างไร (Droid3, Gingerbread, root จะเฉพาะเจาะจง)
นึกคิดฉันกำลังมองหาคำสั่งให้ทำงานผ่าน terminal emulator สิ่งที่คล้ายกับ
ipconfig /flushdns
บนเครื่องที่ใช้ windows
รุ่น Linux คืออะไร
ฉันจะล้างแคช DNS ของฉันบนโทรศัพท์ Android ของฉันได้อย่างไร (Droid3, Gingerbread, root จะเฉพาะเจาะจง)
นึกคิดฉันกำลังมองหาคำสั่งให้ทำงานผ่าน terminal emulator สิ่งที่คล้ายกับ
ipconfig /flushdns
บนเครื่องที่ใช้ windows
รุ่น Linux คืออะไร
คำตอบ:
บนระบบ Linux ทั่วไปแคชจะถูกล้างโดยการเรียกใช้/etc/init.d/nscd restart
แต่อย่างน้อย ROM ของฉันไม่ได้ใช้ nscd เพื่อแคช DNS คุณสามารถตรวจสอบว่าของคุณทำ แต่ฉันสงสัยมัน ฉันเคยเห็นคำแนะนำว่าการล้างแคชเบราว์เซอร์จะล้างแคช DNS ด้วย แต่วิธีหนึ่งที่แน่นอนคือการรีบูตเครื่องอย่างหนัก (ปิดเครื่องถอดแบตเตอรี่ออกเป็นเวลา 30 วินาทีใส่แบตเตอรี่ใหม่และบู๊ต)
ที่อยู่จะถูกแคชไว้ 600 วินาที (10 นาที) โดยค่าเริ่มต้น การค้นหาที่ล้มเหลวจะถูกแคชเป็นเวลา 10 วินาที จากทุกสิ่งที่ฉันเห็นไม่มีอะไรในตัวที่จะล้างแคช เห็นได้ชัดว่านี่เป็นข้อผิดพลาดที่รายงานใน Android เนื่องจากวิธีการที่เก็บแคช DNS การล้างแคชของเบราว์เซอร์ไม่ได้สัมผัสกับ DNS การ "ฮาร์ดรีเซ็ต" จะล้างค่าออกเพราะหมดเวลา
เราสามารถถามเหตุผลที่จำเป็นสำหรับการล้างแคช DNS ได้หรือไม่? อาจจะมีอีกวิธีหนึ่งที่พลาดเพราะเราไม่ได้มองภาพใหญ่
networkaddress.cache.ttl
และในnetworkaddress.cache.negative.ttl
build.prop
วิธีเดียวในการทำเช่นนี้ใน Android คือทำการรีบูตเครื่องอย่างหนัก เครื่องมือบรรทัดคำสั่งที่จำเป็นไม่สามารถใช้งานได้ตามปกติ แต่ในการทดสอบของฉันการรีบูตเครื่องได้ทำเคล็ดลับสำหรับฉันเสมอ (Galaxy Nexus และ HTC Desire, ROM ต่าง ๆ )
นี่เป็นความเจ็บปวด แต่เร็วกว่าการหมดเวลาแคช 10 นาที
นอกจากนี้ยังมีแอพอย่างInternet Booster ที่สัญญาว่าจะ "ล้างแคช DNS" (ท่ามกลางสิ่งอื่น ๆ ) ฉันไม่ได้ลองด้วยตัวเองและยิ่งไปกว่านั้นดูเหมือนจะไม่มีทางทำเช่นนั้น (เพียงปุ่มเดียว "ปรับให้เหมาะสม" ซึ่ง "ใช้การปรับปรุง"); ผลของมันอาจแตกต่างกันระหว่างอุปกรณ์ (พูดถึงคำอธิบายของแอพ) - แต่มันอาจจะดีกว่าการรีบูต Btw: แม้ว่าจะไม่ได้กล่าวถึงรูทตามความต้องการ แต่ก็อาจจำเป็นต้องใช้
มี "แอพที่คล้ายกัน" หลายรายการใน Google Play - แต่โปรดทราบว่าส่วนใหญ่มีโฆษณา Airpush และ / หรือต้องการการอนุญาตที่มากเกินไปซึ่งเป็นสาเหตุที่ฉันไม่ได้ตั้งชื่อที่นี่
อีกวิธีแก้ปัญหาที่เป็นไปได้ (ไม่ได้ทดสอบด้วยตัวเอง) ฉันพบที่MadPCดูเหมือนจะอ้างคำตอบของผู้ใช้ 8522ก่อนที่จะระบุ:
ตัวเลือกสุดท้าย แต่เข้มข้นที่สุดสำหรับผู้ใช้เองเว้นแต่พวกเขาต้องการเพียงแค่รอการอัปเดต: ให้ผู้ใช้ของคุณเข้าสู่การตั้งค่า -> แอปพลิเคชัน -> ที่ตั้งเครือข่าย -> ล้างข้อมูล
วิธีสั้น ๆ อีกวิธีที่กล่าวถึงวิธีที่ง่ายในการล้าง DNS (อีกครั้งฉันไม่ได้ทดสอบตัวเอง): เพียงแค่เปลี่ยนไปใช้โหมดเครื่องบิน (อุ๊ปส์ไม่มีเครือข่าย?) และกลับ (อาใช่นั่นคือ) ควรทำเคล็ดลับ อาจฟังดูงี่เง่า แต่ฉันนึกภาพออกได้ว่าเมื่อเข้าสู่โหมดเครื่องบิน Android จะทำสิ่งที่คล้ายกับ/etc/init.d/networking stop
ซึ่งมี DNS flush เป็นผลข้างเคียง
วิธีแก้ปัญหาที่ง่ายมากถูกจัดทำโดยdtumaykinในความคิดเห็นด้านล่าง: เพียงแค่สลับไปที่โหมดเครื่องบินและกลับมาแล้วก็ทำได้ สำหรับอุปกรณ์บางรุ่นคุณควรลองดู: ไม่มีการติดตั้งเพิ่มเติมและทำได้อย่างง่ายดายแม้กระทั่ง n00bs
หากใครลองวิธีแก้ปัญหาเหล่านี้การยืนยัน (หรือตรงกันข้าม) ยินดีต้อนรับแน่นอน :)
ndc resolver flushdefaultif
และndc resolver flushif wlan0
; พวกเขาต้องการราก นอกจากนี้ยังมีNetworkManagementService.flushDefaultDnsCache ()วิธีการซึ่งต้องการเพียง CHANGE_NETWORK_STATE ก่อน JB แต่จากนั้นถูกล็อคลงไปที่ CONNECTIVITY_INTERNAL ดังนั้นจึงเห็นได้ชัดว่าเป็นวิธีที่แฮ็กในการทำความสะอาดแคช DNS โดยไม่ต้องรูท (หลังจากปรับ build.prop เพื่อฆ่าแคชระดับ Java) แต่มันจะไม่ทำงานใน JB
ใน Android รุ่นใหม่มีตัวเลือกในการล้างแคช DNS ของ Chrome ภายใต้ chrome: // net-internals / # dns
ในกรณีของฉันฉันมีชื่อโดเมนหนึ่งชื่อที่ฉันต้องการให้ล้างออก คำแนะนำเช่นการสลับโหมดเครื่องบินการรีบูตยากหรือการกระทำใน chrome: // net-internals / # dns ไม่ได้ผลสำหรับฉัน แต่ฉันเปลี่ยนการตั้งค่า WiFi ชั่วคราวเพื่อใช้เนมเซิร์ฟเวอร์ของ Google ที่ 8.8.8.8
นี่คือขั้นตอนที่ฉันทำ:
หลังจากขั้นตอนเหล่านี้เมื่อฉันping
แก้ไขชื่อโดเมนในคอนโซลจะแก้ไขที่อยู่ IP ที่ถูกต้องและดูเหมือนจะเขียนทับแคชเก่า การเยี่ยมชมโดเมนในเบราว์เซอร์จะมีผลเหมือนกัน
เมื่อฉันกลับไปที่ WiFi และตั้งค่า "การตั้งค่า IP" กลับไปเป็น "DHCP" โดเมนที่ถูกต้องยังคงแก้ไขที่อยู่ IP ปัจจุบัน
นี่คือ Sony Xperia Z3 ที่ใช้ Android 5.1.1
บน Adroid 5.1 Mobile ซึ่งใช้ DNS ผิดที่เปลี่ยนไปมากระหว่างสอง WLAN (คำถามทำเครื่องหมายบน WLAN Connexion ฉันไม่ต้องการคืนค่าโทรศัพท์ของฉันตามที่ฉันทำครั้งเดียว Engelsiz: DNS Changer แก้ไขแล้ว; )