เว็บเซิร์ฟเวอร์ของฉัน (Ubuntu, Nginx) มีทั้งที่อยู่ IPv4 และ IPv6 ที่กำหนดโดยโฮสต์ สำหรับเว็บไซต์ของฉันฉันจะผูกไว้กับที่อยู่ IPv6 เท่านั้นหรือไม่ เป็นวิธีที่แนะนำมาตรฐานหรือไม่ หรือฉันจะใช้ทั้งที่อยู่ IPv4 และ IPv6
เว็บเซิร์ฟเวอร์ของฉัน (Ubuntu, Nginx) มีทั้งที่อยู่ IPv4 และ IPv6 ที่กำหนดโดยโฮสต์ สำหรับเว็บไซต์ของฉันฉันจะผูกไว้กับที่อยู่ IPv6 เท่านั้นหรือไม่ เป็นวิธีที่แนะนำมาตรฐานหรือไม่ หรือฉันจะใช้ทั้งที่อยู่ 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 ของคุณทำให้คุณนำหน้าเกมและช่วยให้คุณแก้ไขปัญหาใด ๆ ได้นานก่อนที่จะร้ายแรง
โดยค่าเริ่มต้นกับ Linux และ nginx คุณสามารถผูกกับทั้ง IPv4 และ IPv6 ในเวลาเดียวกันโดยเปลี่ยนlisten
คำสั่งของคุณเป็น:
listen [::]:80;
listen 80;
หรือสำหรับไซต์ SSL:
listen [::]:443 ssl;
listen 443 ssl;
A
บันทึกสำหรับที่อยู่ IPv4 ของคุณและAAAA
บันทึกสำหรับที่อยู่ IPv6 ของคุณ
listen 443;
นอกจากนี้ยังมีssl
เหมือนlisten [::]:443 ssl;
? ดังนั้นแทนที่จะlisten 443 ssl;
listen 443;
ผูกไว้กับทั้งสอง!
เรามีเว็บไซต์ IIS ที่มีรหัสอ้างอิงภายในตัวเองโดยใช้ชื่อ DNS ที่ลูกค้าใช้ กระบวนการนี้จะล้มเหลวเสมอ
อาการอีกอย่างหนึ่งคือเบราว์เซอร์ที่ทำงานอยู่ภายในเครื่องบนเซิร์ฟเวอร์ไม่สามารถค้นหาเว็บไซต์ด้วยชื่อของเซิร์ฟเวอร์โดยเฉพาะที่อยู่ IPv4 นั่นคือhttp://192.168.55.139
จะใช้งานได้ แต่http://myhost
จะล้มเหลว การใช้ping myhost
จะตามค่าเริ่มต้นกลับมาอยู่ IPv6 ( ping myhost -4
จะกลับมาอยู่ IPv4)
การแก้ไขคือการเปิด IIS และเปลี่ยนการเชื่อมโยงของเว็บไซต์เพื่อผูกกับที่อยู่ IPv6 เช่นเดียวกับที่อยู่ IPv4
Winnovative HTML to PDF Converter
รหัสดังกล่าวเป็น
Host
ส่วนหัวพร้อมชื่อโดเมนที่ไม่ได้เป็นของคุณ