เบราว์เซอร์จัดการกับ IP หลายตัวอย่างไร [ปิด]


11

ใครสามารถแนะนำฉันถึงข้อมูลเกี่ยวกับพฤติกรรมของเบราว์เซอร์ที่แน่นอนเมื่อเบราว์เซอร์ได้รับหลายระเบียน A สำหรับชื่อโฮสต์ที่กำหนด (พูดว่า ip1 และ ip2) และหนึ่งในนั้นไม่สามารถเข้าถึงได้

ฉันสนใจรายละเอียดที่แน่นอนเช่น (แต่ไม่ จำกัด เฉพาะ):

  1. เบราว์เซอร์จะได้รับ 2 IP จากระบบปฏิบัติการหรือจะได้รับเพียง IP เดียว?
  2. เบราว์เซอร์ใดที่จะลองก่อน (สุ่มหรือเสมอก่อน) ตอนนี้สมมติว่าเบราว์เซอร์เริ่มต้นด้วย ip1 ที่ล้มเหลว
  3. เบราว์เซอร์จะลอง IP1 นานเท่าใด
  4. หากผู้ใช้กด "หยุด" ในขณะที่รอ ip1 จากนั้นคลิกรีเฟรช
    • เบราว์เซอร์ใดที่ IP จะลอง
  5. จะเกิดอะไรขึ้นเมื่อหมดเวลา - จะลองใช้ ip2 หรือให้ข้อผิดพลาดหรือไม่ (และหากเกิดข้อผิดพลาดเบราว์เซอร์ใดที่จะลองเมื่อผู้ใช้คลิกรีเฟรช)
  6. เมื่อผู้ใช้คลิกรีเฟรชเบราว์เซอร์ใดจะพยายามค้นหา DNS ใหม่หรือไม่

ทีนี้สมมติว่าเบราว์เซอร์ลองใช้ ip2 ก่อน

  1. สำหรับคำขอหน้าถัดไปเบราว์เซอร์จะยังคงใช้ ip2 หรืออาจสลับ ips แบบสุ่มหรือไม่
  2. เบราว์เซอร์เก็บ IP ไว้นานเท่าใด
  3. เมื่อเบราว์เซอร์ส่งคำขอ DNS ใหม่และรับ SAME ips มันจะยังคงใช้ IP ที่เป็นที่รู้จักเหมือนเดิมหรือไม่หรือกระบวนการเริ่มต้นจากศูนย์และอาจลองทั้งสองอย่างใดอย่างหนึ่งได้หรือไม่

แน่นอนมันอาจทั้งหมดขึ้นอยู่กับเบราว์เซอร์และอาจแตกต่างกันระหว่างรุ่นและแพลตฟอร์มฉันยินดีที่จะมีรายละเอียดสูงสุด

วัตถุประสงค์ของการนี้ - ฉันพยายามที่จะเข้าใจว่าผู้ใช้จะได้พบกับอะไรบ้างเมื่อใช้ round-robin DNS ที่ใช้และโฮสต์ตัวใดตัวหนึ่งล้มเหลว

ได้โปรดฉันไม่ได้ถามเกี่ยวกับความสมดุลของโหลด DNS ที่ไม่ดีและโปรดอย่าตอบ "อย่าทำ", "เป็นความคิดที่ไม่ดี", "คุณต้องการ heartbeat / proxy / BGP / อะไรก็ตาม"


1
มีส่วนขยายเบราว์เซอร์สำหรับ Firefox ที่แสดงที่อยู่ IP รวมถึงที่อยู่ IP ที่ใช้งานอยู่ในปัจจุบัน ( addons.mozilla.org/en-US/firefox/addon/showip/?src=search ) คุณยังสามารถใช้แท็บ 'Net' ของ Firebug เพื่อแสดงคำขอ IP ที่ให้บริการโดย สิ่งนี้เกี่ยวข้องกับ Firefox เท่านั้น แต่ฉันเชื่อว่าคอนโซล Chrome dev แสดงการร้องขอ IP ที่ให้บริการโดย
Smudge

นอกจากนี้โปรดทราบว่าเซิร์ฟเวอร์ DNS ของ ISP บางรายจะส่งคืนที่อยู่ IP เดียวเท่านั้นทำไมพวกเขาถึงทำอย่างนี้ฉันก็ไม่รู้
Smudge

ขอบคุณแซม และใช่คอนโซล chrome แสดงการค้นหา DNS แคชและแสดง IP ที่ต้องการ
Sandman4

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

เบราว์เซอร์ DO ได้รับ (จากเครือข่ายสแต็ค) หลาย IP ที่อยู่ในรายการ A สำหรับชื่อโฮสต์ ใน Google Chrome ให้ลอง chrome: // net-internals / # dns แล้วดูตัวเอง
Sandman4

คำตอบ:


5

ท้ายที่สุดฉันต้องทำ "การวิจัย" ด้วยตัวเอง นี่คือพฤติกรรมของ Chromium (รุ่น 12.0.742.112) (ทำงานบน Ubuntu 11.04):

โดยทั่วไปแล้วจะใช้งานได้: ลอง 1-ip ip เมื่อหมดเวลา (หลังจาก 189 วินาที) ลองใช้ 2-ip ไม่มีข้อความแสดงข้อผิดพลาดจนกว่าจะใช้ ips ทั้งหมด การเชื่อมต่อถัดไปจะเริ่มจาก ip แรกอีกครั้ง (แม้ว่าจะเพิ่งผ่านไปไม่กี่วินาทีและ IP ที่สองทำงาน - เบราว์เซอร์ไม่สนใจ)

สิ่งหนึ่งที่น่าสนใจ - ความพยายามในการเชื่อมต่อ TCP จะไม่ลดลงเมื่อผู้ใช้กดยกเลิก - เช่นเมื่อฉันกดปุ่มยกเลิกและหลังจาก 60 วินาทีให้ลองคลิกอีกครั้งหน้าจะแสดงใน 130 วินาที (189 ครั้งจากครั้งแรก) แต่ถ้าฉันคลิกยกเลิกและคลิก รีเฟรชหลังจาก 190 วินาทีกระบวนการจะเริ่มตั้งแต่ต้น

เกี่ยวกับรายการในคำถามเดิม:

  1. เบราว์เซอร์รับทั้ง IP จากระบบปฏิบัติการ OS จะไม่เปลี่ยนลำดับของ IP
  2. เบราว์เซอร์มักจะพยายามที่จะเชื่อมต่อไปยัง ip ปรากฏว่าครั้งแรก
  3. ลองเป็นเวลา 189 วินาที
  4. ในการพยายามครั้งที่ 2 มันจะลอง IP แรกอีกครั้ง
  5. เมื่อ IP หมดเวลาครั้งแรกเบราว์เซอร์จะยังคงอยู่ที่ IP ที่สองต่อไป ถ้ามันใช้งานได้ - หน้าจะแสดงขึ้นถ้าไม่ได้ - รอต่อไป
  6. ไม่ผ่านการทดสอบ บล็อกนี้ระบุว่า Chrome ใช้แคช DNS นานถึง 1 นาทีเมื่อเราดู chrome: // net-internals / # dns:

    ความจุ: 100 เวลาที่อยู่ (มิลลิวินาที) สำหรับรายการที่สำเร็จ: 60000 เวลาที่อยู่ (มิลลิวินาที) สำหรับรายการที่ล้มเหลว: 0

หาก IP แรกทำงานได้กระบวนการจะเหมือนกันและจะประสบความสำเร็จในการพยายามครั้งแรกเสมอ


4

แทนที่จะบอกคนที่คุณไม่ต้องการทำไมไม่อธิบายว่าคุณพยายามทำอะไรให้สำเร็จ

หากทุกอย่างที่คุณเป็นข้อมูลที่เป็นที่รู้จักแล้วไปตรวจสอบตัวเองหรืออ่านเอกสารของเบราว์เซอร์ใด ๆ (มีหลายร้อย) ที่คุณกำลังพูดถึง

มันอาจช่วยให้คุณรู้ว่าสิ่งนี้ไม่เกี่ยวกับ DNS

หากเบราว์เซอร์ได้รับการร้องขอก่อนอื่นเบราว์เซอร์จะดูแคชต่าง ๆ เพื่อดูว่ามี URL หรือไม่ถ้าไม่ใช่ URL ดังนั้นชื่อโฮสต์จะมีอยู่แล้ว
หากไม่เป็นเช่นนั้นระบบจะเข้าสู่ตัวแก้ไขระบบเพื่อแก้ไขชื่อโฮสต์

หาก IP ที่ได้รับกลับไม่ตอบสนองจะทำให้แคชนี้ภายในเป็นผลการค้นหาเชิงลบดังนั้นขอ URL เดียวกันซ้ำอีกครั้งโดยตรงโดยหวังว่าจะมีการบันทึก A แตกต่างกันเพราะมันอาจจะไม่มีประโยชน์เนื่องจากมันจะ ได้เก็บผลลัพธ์ชื่อโฮสต์พร้อมกับผลลัพธ์ IP เชิงลบ

หรือคุณรู้ว่าคุณสามารถให้ข้อมูลเพิ่มเติมได้

แก้ไข: ฉันเห็นว่าคุณได้ให้ข้อมูลบางอย่างในระหว่างความต้องการและ smartassery ทั้งหมด

ดีมาก:

  1. หากเบราว์เซอร์ถามตัวแก้ไขระบบสำหรับชื่อโฮสต์มันจะกลับข้อมูลใด ๆ ที่มีสำหรับชื่อโฮสต์นั้น ถ้านั่นหมายถึง 2 IP มันจะส่งคืน 2 IP
  2. ขึ้นอยู่กับเบราว์เซอร์
  3. ขึ้นอยู่กับเบราว์เซอร์ แต่เบราว์เซอร์ทั้งหมดที่ฉันเคยใช้ทำคำขอเดียวและจะหมดเวลาหลังจากการหมดเวลา TCP CONNECT () มาตรฐาน ฉันค่อนข้างแน่ใจว่ามี RFC เกี่ยวกับที่นั้น ...
  4. ขึ้นอยู่กับเบราว์เซอร์ ไม่มีส่วนเกี่ยวข้องกับ DNS หรือระบบเครือข่าย
  5. เลขที่
  6. เลขที่

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


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

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