เซิร์ฟเวอร์ DMZ ที่มี IP สาธารณะ


2

ดังนั้นฉันต้องการเรียกใช้เซิร์ฟเวอร์เกม L4D2 บน VM ส่วนหนึ่งสำหรับการเล่นและบางส่วนสำหรับการฝึกอบรม นี่คือเครือข่ายที่อยู่อาศัยที่เรียบง่ายพร้อมโมเด็ม DSL และเราเตอร์ E4200 (ตอนนี้) เราเตอร์ใช้การจอง DHCP เพื่อสร้าง VM x.x.x.150 และใช้ MAC ของ VM เพื่อให้ทราบว่าเขาเป็น DMZ โมเด็มถูกตั้งค่าเพื่อให้เราเตอร์เป็น DMZ (ปัญหาที่ต้องสงสัย)

ดังนั้นเมื่อฉันเริ่มเซิร์ฟเวอร์เกมสคริปต์ start-ip มี "-ip x.x.x.150" ซึ่งทำงานบน LAN แต่ไม่ใช่ WAN จากนั้นเมื่อฉันตั้งค่าสคริปต์เริ่มต้นสำหรับ "-ip [ภายนอก ip]" มันเพิ่งกลับมาพร้อมกับ:

WARNING: NET_OpenSocket: bind: Cannot assign requested address
Couldn't allocate any server IP port, tried 1 addresses

ดังนั้นสิ่งที่ฉัน คิด ฉันต้องการตั้งค่าอินเทอร์เฟซเครือข่ายของเซิร์ฟเวอร์เป็น [external ip] ฉันจำเพื่อนของเกมเซิร์ฟเวอร์ที่ติดตั้งด้วยวิธีนี้ไม่ชัดเจน อย่างไรก็ตามฉันไม่สามารถหาวิธีรับที่อยู่ของเซิร์ฟเวอร์ DMZ ให้เป็นไอพีสาธารณะได้ ฉันพยายามบังคับ ip แบบคงที่ แต่ฉันไม่ทราบว่าเกตเวย์ควรเป็นอย่างไร

ฉันทำเช่นนี้กับ Google เป็นเวลา 2 วันแล้วและไม่พบสิ่งใดนอกจากการแก้ปัญหาลีกองค์กร

คำตอบ:


1

คุณต้องทำการส่งต่อพอร์ตบนเราเตอร์ของคุณ

ก่อนอื่นคุณต้องรู้พอร์ตที่แอปพลิเคชันของคุณ (L4D2) ทำงาน อาจอยู่ในช่วงนี้ 27,000 - 27040

จากนั้นกลับไปกำหนดค่าเราเตอร์ของคุณและทำการส่งต่อพอร์ตไปยังพอร์ตเหล่านี้ (TCP / UDP)


คำแนะนำที่ดี แต่ความคิดของ DMZ คือพอร์ตทั้งหมดเปิด ...
reasra

@reasra คุณต้องการวางพีซีของคุณใน DMZ หรือไม่?
humansg

ไม่ใช่พีซีที่เป็น DMZ แต่เป็น VM ในนั้น อินเตอร์เฟสเสมือนจะทำงานได้หรือไม่ ฉันไม่เคยตั้งค่า
reasra

ลองแก้ไขปัญหาจากเราเตอร์เอง ขั้นแรกดูตารางไคลเอ็นต์ DHCP ตรวจสอบให้แน่ใจว่าเราเตอร์กำลังกำหนด VM เป็น IP ของคุณ ตรวจสอบจากตารางนี้ที่อยู่ MAC (ของ VM ของคุณ) ด้วยที่อยู่ MAC ที่กำหนดค่าในการตั้งค่า DMZ ของคุณ
humansg

Anyway, I cannot figure out how to get the DMZ server's address to be the public ip จากความรู้ของฉันคุณไม่สามารถตั้งค่า VM เป็น IP สาธารณะ จุดประสงค์ของเราเตอร์คือเพื่อทำการแปล NAT ให้กับคุณ
humansg
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.