ฉันควรใช้ IPv6 เท่านั้นหรือทั้ง IPv4 และ IPv6 ในเว็บเซิร์ฟเวอร์ของฉัน


39

เว็บเซิร์ฟเวอร์ของฉัน (Ubuntu, Nginx) มีทั้งที่อยู่ IPv4 และ IPv6 ที่กำหนดโดยโฮสต์ สำหรับเว็บไซต์ของฉันฉันจะผูกไว้กับที่อยู่ IPv6 เท่านั้นหรือไม่ เป็นวิธีที่แนะนำมาตรฐานหรือไม่ หรือฉันจะใช้ทั้งที่อยู่ IPv4 และ IPv6


13
คุณกำลังถามคำถามผิด (กับคนผิด) - ถามตัวเองว่า "ฉันต้องสามารถเข้าถึงเว็บไซต์นี้จากไคลเอนต์ IPv4, ไคลเอนต์ IPv6 หรือทั้งสองอย่างได้หรือไม่" คำตอบก็คือคำตอบว่าเว็บเซิร์ฟเวอร์ของคุณต้องการฟังอะไร
voretaq7

6
ปกติฉันจะเห็นด้วยกับคำตอบ "รับสเป็คแรกของคุณ" อย่างนั้น แต่ในกรณีนี้แปลกฉันไม่; ฉันเห็นด้วยกับไมเคิล "v6 เท่านั้น" ยังคงเศร้าไม่น่าเป็นไปได้ที่จะเป็นข้อกำหนด (แม้ว่าจะเป็นความคิดเห็นนี้เป็นความผิดทั้งหมด) ถ้าไม่ใช่เราก็จะลงไปที่ "stack stack" และ "v4 only" แม้ว่าผู้ใช้ของคุณจะพูดว่า "v4 เท่านั้น" ถูกต้อง แต่ ณ จุดนี้มันผิด Mixed-stack เป็นวิธีการพิสูจน์อักษรในอนาคตไม่ว่าชุมชนผู้ใช้ปัจจุบันจะเป็นใคร
MadHatter สนับสนุนโมนิก้า

@ MadHatter ณ จุดนี้เราสามารถกำจัด "v4-only" ได้อย่างปลอดภัย ขีด จำกัด โดยธรรมชาติของ NAT ขนาดใหญ่ทำให้ v4 เท่านั้นไม่สามารถป้องกันได้สำหรับผู้ให้บริการเว็บไซต์หรือบริการอินเทอร์เน็ตอื่น ๆ รายละเอียดเพิ่มเติมในคำตอบที่อัพเดตของฉัน
Michael Hampton

@MichaelHampton ยังคงเห็นด้วยกับคุณ
MadHatter สนับสนุนโมนิก้า

คำตอบ:


56

ใช้ทั้ง IPv4 และ IPv6

คุณควรใช้ทั้งที่อยู่ IPv4 และ IPv6

ปัจจุบันเกือบทุกคนบนอินเทอร์เน็ตมีที่อยู่ IPv4 หรืออยู่หลัง NAT บางประเภทและสามารถเข้าถึงทรัพยากร IPv4 ได้

อย่างไรก็ตามในขณะที่เขียนเพียง0.7% 2.3% 3.8% 6.5% 9% 12% 19% 22% 26% ของอินเทอร์เน็ตสามารถใช้งาน IPv6 ได้แต่จำนวนนั้นเพิ่มขึ้นเรื่อย ๆ เนื่องจาก IPv6 เริ่มแพร่กระจายไปทั่วโลก

ในไม่กี่แห่งผู้ให้บริการอินเทอร์เน็ตกำลังให้บริการIPv6 เป็นหลักหรือเฉพาะ IPv6 ให้กับลูกค้าที่อยู่อาศัยและใช้ NAT, NAT64 ขนาดใหญ่หรือโซลูชั่นอื่น ๆ สำหรับการเชื่อมต่อ IPv4 จำนวนนี้คาดว่าจะเพิ่มขึ้นเนื่องจากพื้นที่ที่อยู่ IPv4 หมดลงในที่สุด โดยทั่วไปผู้ใช้เหล่านี้จะมีประสิทธิภาพที่ดีขึ้นกว่า IPv6

ในกรณีที่ ISP ได้ปรับใช้ NAT ขนาดใหญ่เพื่อแก้ปัญหาการใช้งาน IPv4 ผู้ใช้ที่ติดอยู่กับสิ่งนี้จะลดความน่าเชื่อถือของการเชื่อมต่ออินเทอร์เน็ตทั้งหมดเนื่องจากข้อ จำกัด การเชื่อมต่อที่มีอยู่ในเกตเวย์ NAT ขนาดใหญ่ ตัวอย่างเช่นหน้าเว็บอาจโหลดทรัพยากรบางอย่างเท่านั้น แต่ไม่ใช่ทั้งหมดของมันทิ้งไอคอนที่เสียหายซึ่งรูปภาพควรมีสไตล์และสคริปต์ที่ขาดหายไปเป็นต้นซึ่งคล้ายกับการ จำกัด การเชื่อมต่อบนเราเตอร์ในบ้าน แต่ส่งผลกระทบต่อผู้ใช้ทั้งหมดของ ISP เป็นระยะ ๆ และดูเหมือนจะสุ่ม หากคุณต้องการให้เว็บไซต์ของคุณมีความน่าเชื่อถือสำหรับผู้ใช้เหล่านี้คุณต้องให้บริการผ่าน IPv6 (และ ISP ต้องปรับใช้ IPv6)

เนื่องจาก IPv6 เป็นที่ที่อินเทอร์เน็ตกำลังดำเนินไปการเปิดใช้งานเว็บไซต์ IPv6 ของคุณทำให้คุณนำหน้าเกมและช่วยให้คุณแก้ไขปัญหาใด ๆ ได้นานก่อนที่จะร้ายแรง

กำหนดค่า nginx

โดยค่าเริ่มต้นกับ Linux และ nginx คุณสามารถผูกกับทั้ง IPv4 และ IPv6 ในเวลาเดียวกันโดยเปลี่ยนlistenคำสั่งของคุณเป็น:

listen [::]:80;
listen 80;

หรือสำหรับไซต์ SSL:

listen [::]:443 ssl;
listen 443 ssl;

ตกลงขอบคุณ ... อีกคำถามหนึ่ง .. ตอนนี้ฉันได้ติดตั้งเซิร์ฟเวอร์ ... ใน DNS ซ้ำฉันต้องใส่สองระเบียน A และ AAAA (ด้วยชื่อโฮสต์ @) และชี้ไปที่ IP ที่เกี่ยวข้องหรือไม่
THpubs

3
ใช่Aบันทึกสำหรับที่อยู่ IPv4 ของคุณและAAAAบันทึกสำหรับที่อยู่ IPv6 ของคุณ
Michael Hampton

สมบูรณ์ ขอบคุณมากสำหรับคำอธิบาย :) ฉันใหม่กับสิ่งที่ ipv6
THpubs

ฉันไม่คุ้นเคยกับ Nginx แต่ไม่ควรlisten 443;นอกจากนี้ยังมีsslเหมือนlisten [::]:443 ssl;? ดังนั้นแทนที่จะlisten 443 ssl; listen 443;
CVn

@aCVn ใช่มันควรจะเป็น ขอบคุณสำหรับการจับที่ นั่นจะสอนให้ฉันแก้ไขสิ่งต่าง ๆ ในขณะหลับครึ่ง
Michael Hampton

3

ผูกไว้กับทั้งสอง!

เรามีเว็บไซต์ IIS ที่มีรหัสอ้างอิงภายในตัวเองโดยใช้ชื่อ DNS ที่ลูกค้าใช้ กระบวนการนี้จะล้มเหลวเสมอ

อาการอีกอย่างหนึ่งคือเบราว์เซอร์ที่ทำงานอยู่ภายในเครื่องบนเซิร์ฟเวอร์ไม่สามารถค้นหาเว็บไซต์ด้วยชื่อของเซิร์ฟเวอร์โดยเฉพาะที่อยู่ IPv4 นั่นคือhttp://192.168.55.139จะใช้งานได้ แต่http://myhostจะล้มเหลว การใช้ping myhostจะตามค่าเริ่มต้นกลับมาอยู่ IPv6 ( ping myhost -4จะกลับมาอยู่ IPv4)

การแก้ไขคือการเปิด IIS และเปลี่ยนการเชื่อมโยงของเว็บไซต์เพื่อผูกกับที่อยู่ IPv6 เช่นเดียวกับที่อยู่ IPv4

ป้อนคำอธิบายรูปภาพที่นี่


6
ไม่จำเป็นต้องทำให้งงงวยที่อยู่ส่วนตัว แม้ว่าคุณควรผูกกับที่อยู่ IPv6 ทั่วโลกของคุณเพื่อให้เว็บไซต์ของคุณสามารถเข้าถึงจากภายนอกผ่าน IPv6
Michael Hampton

Winnovative HTML to PDF Converterรหัสดังกล่าวเป็น
เกลน Little

2
การมีบริการที่สามารถเข้าถึงได้ทั้งภายในและภายนอกนั้นง่ายกว่าเมื่อคุณไม่ใช้ NAT และง่ายต่อการหลีกเลี่ยง NAT หากคุณใช้ IPv6 แต่การเชื่อมต่อกับชื่อโฮสต์ที่สุ่มให้ลูกค้านั้นฟังดูเหมือนข้อบกพร่องในการออกแบบ เป็นไปได้ทั้งหมดที่ลูกค้าจะส่งHostส่วนหัวพร้อมชื่อโดเมนที่ไม่ได้เป็นของคุณ
kasperd
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.