ฉันมี RHEL7 VM ที่ทำงานบน Hyper-V ใน VM ของฉัน ฉันมีโปรแกรมบนเว็บที่ฉันต้องการเข้าถึงผ่านพอร์ต 11000 ใน VM ซอฟต์แวร์ได้รับการกำหนดค่าและสามารถเข้าถึงได้โดย https://0.0.0.0:11000
.
ฉันได้ลองตั้งค่า v-switch ภายนอกและ v-switch ภายในแล้ว ทั้งคู่ไม่ประสบความสำเร็จเนื่องจากฉันไม่สามารถแม้แต่ ping สวิตช์เสมือนจากภายใน VM ฉันกำลังพยายามกำหนดค่านี้โดยใช้ NAT Switch
นี่คือวิธีที่ฉันกำหนดค่าอินเทอร์เฟซเครือข่ายจากโฮสต์ใน PowerShell
PS> ใหม่ NMSwitch -SwitchType ภายใน -SwitchName "LINK"
PS> ใหม่ NetIPAddress -IPAddress "192.168.122.1" -PrefixLength 24 -InterfaceAlias "vEthernet (ลิงก์)"
PS> ใหม่ NetNAT -InternalIPInterfaceAddressPrefix "192.168.122.0/24" - ชื่อ "LINK-NETNAT"
PS> Add-NetNatStaticMapping -ExternalIPAddress "0.0.0.0/24" -ExternalPort 11000 -InternalIPAddress "192.168.122.2" -InternalPort 11000 -โปรโตคอล TCP -NatName "LINK-NETNAT"
ฉันยังอนุญาตการรับส่งข้อมูลพอร์ตผ่านไฟร์วอลล์ Windows:
New-NetFirewallRule -DisplayName "HyperVNAT" -Direction Inbound -LocalPort 11000 -Protocol TCP -Action Allow
คำสั่งทั้งหมดเหล่านี้ทำงานโดยไม่มีปัญหา ฉันถือว่ามันใช้งานได้เพราะอุปกรณ์เครือข่ายถูกสร้างขึ้นด้วยพารามิเตอร์ที่เหมาะสมตามที่ระบุไว้ด้านบน
virbr0 ได้รับการกำหนดค่าเป็น 192.168.122.1
ฉันตั้งค่า eth0 ดังต่อไปนี้:
eth0 ตั้งค่าการกำหนดแอดเดรสด้วยตนเองเป็น IPv4
ที่อยู่: 192.168.122.2
ประตู: 192.168.122.1
เน็ตมาสก์: 255.255.255.0
DNS และ Routes ถูกปล่อยให้เป็นแบบอัตโนมัติ
นี่คือภาพหน้าจอของ ไอพีแอดเดรส
ภาพหน้าจอ - ip addr
เมื่อฉันพยายามเข้าถึง https://192.168.122.2:11000
ฉันไม่ได้รับการตอบสนอง
จาก VM ฉันสามารถ ping ได้เท่านั้น 192.168.122.1
และไม่มีอะไรอยู่ข้างนอก
จากโฮสต์ ฉันสามารถ ping 192.168.122.1
แต่ไม่มี IP อื่นที่อยู่ภายใน VM (.122.2
หมดเวลา)
เป้าหมายสูงสุดของฉันคือสามารถเข้าถึงเว็บอินเตอร์เฟสที่อยู่ใน VM on port 11000
จากเครื่องโฮสต์