Jak skonfigurować sieć wirtualną do korzystania z dwóch kart sieciowych? Jeden jest NAT, drugi zmostkowany

0

Jest to prawdopodobnie coś prostego i zostało już zadane, ale po prostu nie wiem, czego szukam. Brakuje mi słownictwa. Mam serwer z hostem Debian i mam zainstalowany KVM. Mam wirtualną sieć skonfigurowaną z DHCP i poinstruowałem go, aby przekazywał połączenia do jednej z kart sieciowych hosta za pomocą połączenia NAT. To urządzenie hosta ma jednak więcej niż jedną kartę sieciową, która jest podłączona do sieci zewnętrznej i nieużywana. Czy można ustanowić zmostkowane połączenie między moją siecią wirtualną NAT a tą inną nieużywaną kartą sieciową? Pomysł polegałby na umożliwieniu innym fizycznym urządzeniom połączenia się z tą siecią wirtualną i uzyskania z niej adresu IP, który pozwoli temu innemu urządzeniu fizycznemu na komunikację z maszynami wirtualnymi działającymi w sieci wirtualnej. Następnie wszelkie inne żądania połączenia do świata zewnętrznego będą przekazywane za pomocą NAT z inną kartą sieciową używaną do łączenia się z Internetem. Od czego zacząć i czego szukać, aby to osiągnąć? Patrzyłem na niektóreDokumentacja nie może jednak znaleźć tego, czego szukam. Jeśli to pytanie jest niejasne, daj mi znać, a spróbuję powtórzyć.

BobserLuck
źródło

Odpowiedzi:

2

Tak, możesz to zrobić. Dodaj drugą kartę sieciową do wewnętrznego mostu. Podczas korzystania z Debiana polecenia mogą wyglądać mniej więcej tak:

brctl show

Zidentyfikuj most dla swojej sieci wirtualnej.

brctl addif <name of bridge> <name of interface>

To powoduje tymczasową zmianę. Aby zmienić na stałe, należy edytować pliki konfiguracyjne. Jeśli masz plik / etc / network / interfaces, dodanie wiersza "bridge <name of bridge>"pod interfejsem, który chcesz być w sieci wewnętrznej, załatwi sprawę. Jeśli masz folder / etc / sysconfig / network-scripts /, będziesz mieć plik o nazwie „ifcfg-” i musisz tam wprowadzić zmiany. Dokumentacja jest dostępna online dla formatów każdego z tych plików.

Andy
źródło
Dziękuję za odpowiedź! Skonfiguruję to zdalnie i przetestuję później, kiedy będę w stanie, i zobaczę, czy to zadziała.
BobserLuck
Myślę, że doprowadziło mnie to do połowy. Udało mi się uruchomić vrctl addif ExampleBridge ExampleInterface i dodać most, ale po podłączeniu urządzenia do interfejsu nie mógł rozpoznać sieci. Może to być coś, co muszę edytować za pomocą virsh, odkąd sieć została z nim utworzona.
BobserLuck
1
Kiedy mówisz „nie rozpoznałem sieci”, czy masz na myśli to, że nie znaleziono serwera DHCP virsh? To jest drapak. Czy możesz umieścić sniffer pakietów na urządzeniu zewnętrznym i / lub na moście i sprawdzić, czy most działa? Powinieneś zobaczyć ruch z drugiego segmentu mostu, nawet jeśli nie możesz uzyskać DHCP.
Andy
Ach, wygląda na to, że interfejs był wyłączony. Teraz mogę połączyć się z DHCP hostowanym w sieci i uzyskać adres IP oraz połączyć się z Internetem z mojego laptopa za pośrednictwem tego serwera. Nie mogę się komunikować z maszynami wirtualnymi w sieci. Mogę pingować jedną maszynę wirtualną z drugiej, mogę pingować internet ze wszystkich urządzeń, ale nie mogę pingować z mojego laptopa na maszynę wirtualną ani z maszyny wirtualnej na mój laptop. Nie jestem pewien, co się dzieje. Czy miałoby to związek z siecią wirtualną korzystającą z NAT? Czy adresy IP są tłumaczone przed uderzeniem w most? Dlaczego mogę uzyskać adres IP z sieci, ale nie komunikować się z maszynami wirtualnymi?
BobserLuck
IP w ogóle nie jest tłumaczone; most jest funkcjonalnie identyczny z przełącznikiem i ma bardzo mało inteligencji. NAT też w to nie gra; nie pozostawiasz wirtualnej sieci LAN, aby pingować jedną maszynę na drugą. Podejrzewam, że reguły zapory są bardziej winne, szczególnie jeśli jeden z twoich komputerów ma system operacyjny Windows. Upewnij się, że komputer z systemem Windows jest ustawiony na tryb sieci prywatnej, a jeśli to nie działa, tymczasowo wyłącz Zaporę systemu Windows, aby sprawdzić, czy problem jest związany z zaporą.
Andy