Przekazywanie portów NAT w VirtualBox

6

W moim VirtualBoxie (w systemie Ubuntu 12.10 Server Edition ) włączyłem dwa adaptery , z typami: Tylko host i NAT.
Moim głównym motywem jest możliwość połączenia dwóch maszyn wirtualnych działających na dwóch różnych hostach (maszynach fizycznych) na porcie (powiedzmy 22). Wiem, że odpowiedzią jest Port Forwarding, ale jest to zbyt mylące. Cóż, próbowałem w trybie Bridged, również tam, z zewnątrz mojej maszyny, nie można połączyć się z maszyną wirtualną.

Edycja : Cóż, nie sugerowałbym Bridged Network, ponieważ zajmuje on adresy IP z sieci, dlatego wolałbym technikę NAT.

Tanny
źródło
2
Tylko host nie jest tym, czego chcesz. Chcesz NAT lub tryb Bridged. Sposób włączenia ruchu z hosta do gościa zależy od Ciebie. Nie będzie to łatwe bez przekierowania portów w trybie NAT. Tryb zmostkowany oznacza, że ​​Gość będzie potrzebował adresu IP w tej samej podsieci, co host. HTH.
NickW
@NickW: masz rację ..... Obecnie próbuję to zrobić, przekierowanie portów za pomocą NAT ..... ale nie jestem w stanie zrozumieć, jaki adres IP / porty należy określić w regule? A także czy powinienem wspomnieć o regule w sieci VirtualBox czy na hoście? Proszę pomóż.
Tanny
Cóż, mówisz <host.ip>:<port> <-> <guest.ip>.<port> so your rule would be 1.2.3.4: 22` mapy 192.168.1.10:22lub coś podobnego, po prostu przekierowujesz porty, możesz nawet przekierowywać wewnętrznie z innego portu do portu 22, jeśli szukasz w Google, dla twojego systemu operacyjnego, będą wyjaśnienia na temat jak to zrobić.
NickW

Odpowiedzi:

5

Wymyśliłem rozwiązanie po wielu uderzeniach w głowę (chociaż wymyśliłem to jakiś czas temu, odpowiadając nieco później). Rozwiązaniem jest użycie techniki NAT z przekierowaniem portów. Wszystko, co musisz zrobić, to w ustawieniach sieciowych vms w VirtualBox dodać reguły przekierowania portów . Nie ma ograniczeń co do wartości portów i mogą to być cokolwiek, o ile nie ma portów powodujących konflikty i odradza się używanie niektórych numerów portów .

Aby ustawić reguły: IP hosta to adres IP twojego głównego komputera, a IP gościa to adres IP NAT maszyny wirtualnej. Wszelkie żądania przychodzące do twojego hosta przez ten port byłyby przekierowywane bezpośrednio do adresu IP gościa na wspomnianym porcie.

Tabela przekierowania portów NAT

Tutaj pierwszy adres IP odnosi się do mojej maszyny hosta, tj. Tej, na której jest zainstalowany VirtualBox. A drugi adres IP odnosi się do maszyny gościa, tj. Tej, której potrzebuję, aby uruchomić serwer lub się z nim połączyć.

Tanny
źródło
4

Radziłbym użyć trybu Bridged. To sprawi, że twoja maszyna wirtualna będzie miała własny adres IP w tej samej sieci co fizyczny host i będzie zachowywać się jak każda fizyczna maszyna w tej samej sieci. Upewnij się, że obie sieci (z każdej maszyny wirtualnej hosta) mogą się połączyć, a zapora sieciowa jest otwarta na maszynie wirtualnej do komunikacji.

Cedric Simon
źródło
2
Właściwie tę metodę chcę zachować do końca ...... ponieważ w tej metodzie zjadają adresy IP ..... w przeciwnym razie tryb Bridged jest dość prosty do wdrożenia. Dzięki za odpowiedź
Tanny
1
Zachowaj ostrożność podczas korzystania z trybu pomostowego w środowiskach z rozszerzonymi zasadami bezpieczeństwa: ponieważ interfejs mostu używa innego MAC, a nie oryginalnego interfejsu fizycznego, host może zostać zablokowany z sieci, ponieważ nieznany MAC może być interpretowany jako intruz sieć.
mschenk74,
@Tanny, „ faktycznie zje IP ”. To tak naprawdę nic nie znaczy. Jak spożywać protokoły internetowe (IP). Myślę, że masz na myśli adresy IP. IP oznacza protokół internetowy i istnieją tylko dwa aktualne adresy IP: IPv4 i IPv6.
Ron Maupin,
@RonMaupin Dziękuję za zwrócenie uwagi, mój dobry panie .. To było leniwe z mojej strony ... Chciałbym móc edytować komentarz teraz .. :)
Tanny