Score:1

ชื่อโดเมนไม่พร้อมใช้งานบนเครือข่ายท้องถิ่น แต่อยู่ภายนอก!

ธง au

ในเครือข่ายท้องถิ่นของเราเรามี เซิร์ฟเวอร์อูบุนตู 20.4ซึ่งโฮสต์เว็บแอปพลิเคชัน ฉันกำหนดค่าเราเตอร์และ DNS ของโดเมน ฉันติดตั้งแล้ว มาเข้ารหัสกันเถอะ ใบรับรองและฉันทำสำเร็จแล้ว https://mydomain.com เพื่อแสดงเว็บแอปพลิเคชันของฉัน

ปัญหาของฉันคือเมื่อฉันพยายามดูโดเมน https://mydomain.com จากภายในเครือข่ายท้องถิ่น เบราว์เซอร์จะตอบกลับว่า `ไม่สามารถเข้าถึงไซต์นี้ได้ แต่เมื่อเชื่อมต่อภายนอกไซต์แล้ว

ฉันต้องใช้การตั้งค่าใหม่ในเซิร์ฟเวอร์ Ubuntu หรือนี่เป็นเรื่องของการกำหนดค่าของเราเตอร์

ทางออกเดียว...

ฉันแก้ไข เจ้าภาพ ไฟล์ในพีซีของฉัน (C:\Windows\System32\Drivers\etc\hosts) การเพิ่มบันทึก

192.168.0.100 mydomain.com

และไซต์สามารถมองเห็นได้ในขณะนี้ แต่ฉันอยากทราบว่าฉันจะใช้การตั้งค่ากับเซิร์ฟเวอร์ Ubuntu ได้อย่างไร

แก้ไข 1 ถ้าฉันวิ่ง nslookup mydomain.com จากบรรทัดคำสั่งของ Windows ฉันได้รับ:

เซิร์ฟเวอร์: one.one.one.one
ที่อยู่: 1.1.1.1

คำตอบที่ไม่ได้รับอนุญาต:
ชื่อ: mydomain.con
ที่อยู่: My_External_IP

ทั้งคู่ เซิร์ฟเวอร์อูบุนตู และพีซีของฉันอยู่บนซับเน็ตเดียวกัน ฉันได้เพิ่มการส่งต่อพอร์ต (80, 443) ไปยังเราเตอร์เพื่อเผยแพร่เซิร์ฟเวอร์

Vijay Prema avatar
jp flag
โปรดอธิบายวิธีการตั้งค่าเครือข่ายท้องถิ่นของคุณ (ซึ่งเป็นส่วนหนึ่งของเซิร์ฟเวอร์) นี่อาจเป็นปัญหา NAT หรือปัญหากิ๊บติดผม/ลูปแบ็ค แต่เราไม่สามารถบอกได้หากไม่มีข้อมูลเกี่ยวกับเครือข่ายของคุณ
FedKad avatar
cn flag
IP ภายในเครื่อง (เช่น 192.168...) จะแตกต่างจาก WAN IP คุณต้องมีเมธอด (เซิร์ฟเวอร์ DNS ภายในเครื่อง) ที่ให้บริการ IP ภายในเครื่อง ในขณะที่เซิร์ฟเวอร์ DNS อินเทอร์เน็ตของคุณจะให้บริการ IP อินเทอร์เน็ต อีกวิธีหนึ่งคือแก้ไขไฟล์ `hosts` ของผู้มีโอกาสเป็นไคลเอนต์แต่ละราย (ตามที่คุณได้ทำไปแล้ว)
yaylitzis avatar
au flag
เซิร์ฟเวอร์ DNS ในเครื่องที่คุณกล่าวถึงนี้ได้รับการตั้งค่าบนเราเตอร์หรือบนเซิร์ฟเวอร์
FedKad avatar
cn flag
เราเตอร์ของคุณอาจไม่มีฟังก์ชันดังกล่าว แต่ถ้าคุณมีไวด์การ์ดใบรับรอง LetsEncrypt คุณสามารถทำสิ่งนี้บนเซิร์ฟเวอร์ DNS ทางอินเทอร์เน็ตของคุณ: `mydomain.com your_external_ip` ตามที่ได้ทำไปแล้ว เพิ่มบันทึกเช่นนี้ `local.mydomain.com 192.168.0.100` และเข้าถึงเว็บเซิร์ฟเวอร์ของคุณเป็นการภายในโดยใช้ชื่อ https://local.mydomain.com
Score:0
ธง cn

"ปัญหา" ก็คือเครื่อง Windows ของคุณ (และเครื่องอื่นๆ ในเครือข่ายของคุณ) แก้ไขชื่อโดเมนเป็น ที่อยู่ IP สาธารณะซึ่งแตกต่างจาก 192.168.0.100... ดังนั้น การกำหนดเส้นทางจึงแตกต่างกัน เมื่อคุณพยายามเข้าถึง 192.168.0.100 การรับส่งข้อมูลยังคงอยู่ใน LAN ของคุณ หากคุณใช้ที่อยู่ IP สาธารณะ การรับส่งข้อมูลของคุณจะถูกส่งผ่านอินเทอร์เน็ตและกลับมาหาคุณผ่านเราเตอร์

ดังนั้น คุณควรตั้งค่าการส่งต่อพอร์ตบนเราเตอร์ของคุณ เพื่อให้คำขอขาเข้าไปยังพอร์ต 80 และ 443 ถูกส่งต่อไปยังที่อยู่ในเครื่องของเซิร์ฟเวอร์ นั่นคือ 192.168.0.100 ในตัวอย่างของคุณ

หากคุณมีตัวแก้ไข DNS ของคุณเองใน LAN ของคุณ คุณก็สามารถกำหนดค่าโดเมนนั้น ("โซน") ภายในเครื่องเพื่อส่งคืนที่อยู่ IP ส่วนตัวแทน สำหรับผู้ใช้ภายในเครื่องเท่านั้น ดู DNS แยกขอบฟ้า

การแก้ไขไฟล์โฮสต์อาจยอมรับได้สำหรับการทดสอบ การใช้งานในระยะสั้น หากคุณไม่มีไคลเอนต์จำนวนมากที่ต้องดูแล มิฉะนั้นคำแนะนำของฉันคือการตั้งค่าตัวแก้ไข DNS ในเครื่อง (และตัวส่งต่อ) สำหรับ LAN ของคุณ ตัวอย่าง: dnsmasq

โพสต์คำตอบ

คนส่วนใหญ่ไม่เข้าใจว่าการถามคำถามมากมายจะปลดล็อกการเรียนรู้และปรับปรุงความสัมพันธ์ระหว่างบุคคล ตัวอย่างเช่น ในการศึกษาของ Alison แม้ว่าผู้คนจะจำได้อย่างแม่นยำว่ามีคำถามกี่ข้อที่ถูกถามในการสนทนา แต่พวกเขาไม่เข้าใจความเชื่อมโยงระหว่างคำถามและความชอบ จากการศึกษาทั้ง 4 เรื่องที่ผู้เข้าร่วมมีส่วนร่วมในการสนทนาด้วยตนเองหรืออ่านบันทึกการสนทนาของผู้อื่น ผู้คนมักไม่ตระหนักว่าการถามคำถามจะมีอิทธิพลหรือมีอิทธิพลต่อระดับมิตรภาพระหว่างผู้สนทนา