Chcę utworzyć wirtualne adresy MAC dla mojej karty sieciowej lub karty sieci bezprzewodowej, aby móc połączyć się z siecią za pomocą więcej niż jednego adresu IP z jednego komputera lub laptopa.
Jak mogę to zrobić? (Wiem, że to możliwe, ponieważ jeden z moich przyjaciół zrobił to na uniwersytecie i ma więcej niż jeden - czasem do 255 - adresów IP w sieci).
networking
ip
mac-address
Moein Hosseini
źródło
źródło
Odpowiedzi:
Wszystko, co musisz zrobić, to
następnie włącz interfejs sieci wirtualnej
a następnie opcjonalnie uzyskaj ip za pomocą dhcp z
źródło
Nie potrzebujesz więcej niż jednego adresu MAC, aby mieć wiele adresów IP w jednym interfejsie sieciowym. Ta technika nosi nazwę ip aliasing .
Każdy system operacyjny ma nieco inną składnię, ale zwykle, aby ustawić różne adresy IP w tym samym interfejsie, wystarczy zrobić coś takiego:
Powyższy przykład działa w systemie Linux. Na BSD potrzebujesz czegoś takiego:
źródło
Edycja: Dodaj wskazówkę dotyczącą konfiguracji urządzenia wirtualnego:
Najpierw skonfiguruj dodatkowe urządzenie, np .:
Możesz dodatkowo dodać do niego adres IP. na przykład:
Jeśli naprawdę chcesz, możesz także zmienić adres MAC:
Zauważ, że drugi bit pierwszego bajtu musi być ustawiony tak, aby zasygnalizować lokalnie zarządzany adres (LAA) - co oznacza, że ten adres MAC jest poprawny tylko lokalnie (np. W sieci przedsiębiorstwa) i może nie być unikalny na całym świecie (więc możesz przypisać własne adresy MAC bez konieczności oficjalnej rejestracji).
źródło
eth0
i „et0: 1”. Zakładając, że tworzyszeth0:1
zgodnie z opisem. Dla pewności przetestowałem to na swoim systemie. Ostatnie polecenie (ip link ...
) zmieniło adres MAC obu „interfejsów”. Oznacza to, żeeth0
sam również ma nowy adres MAC. Powodem jest to, żeifconfig eth0:1 up
nie utworzy nowego linku. Dodanie tylko adresu IP do istniejącego.macvlan
Wydaje się, że należy utworzyć link.Działa to dla mnie w systemie Linux (Kali). Może być konieczna zmiana adresów, bram lub masek sieciowych w zależności od osobistej sytuacji. Przepraszam, jeśli nie jest to potrzebne, aby następna osoba potknęła się tutaj, tak jak przed chwilą.
Gdzie
<your-nicN>
jest to, co widzisz zifconfig
takich jaketh0
lubwlan0
Tworzy to nowy „wirtualny” interfejs o nazwie mac0 i wprowadza go. Dodałem polecenie up, ponieważ po raz pierwszy pomyślałem, że to nie działa, ale
sudo ip link show [tab][tab]
plus podwójna karta uzupełniona listą zawierającą mac0, a następnie przystąpiłem do wyświetlania go z ifconfig i przypisania mu adresu.Pamiętaj tylko, aby przypisać mu adres IP lub powiedzieć, aby używał dhcp
lub
jeśli musisz przypisać bramę domyślną:
Miejsce, z którego mam trochę tego, znajduje się tutaj: http://www.pocketnix.org/posts/Linux%20Networking:%20MAC%20VLANs%20and%20Virtual%20Ethernets
Edycja3: Próbowałem zadzierać z „wiązaniem”,
ifenslave
ale muszę się trochę więcej przestudiować, tak naprawdę nie mogłem tego pojąć. To, co zrobiłem, chociaż skonfigurowałem „EtherSwitch Router” w GNS3, a następnie przypisałem „chmurę” dziesięciumacN
urządzeń na jednym „końcu”, a następnie inną „chmurę” do adaptera tylko hosta vmware, virtualbox prawdopodobnie działałby tak samo , na drugim „końcu” zamierzam trochę z tym popsuć i sprawdzić, czy mogę ograniczyć prędkość namacN
urządzeniach, aby zasymulować „agregację” lub czy mogę rozłożyć obciążenie na dziesięć połączeń w celu „zwiększenia” pasmo. Może jeśli ustawię je wszystkie na txqueuelen: 10 w systemie Linux. Mam DragonflyBSD na drugim „końcu” tego, spróbuję podłączyć go do mojego prawdziwego routera przez GNS3.Edycja2: Oto szybki skrypt, aby uzyskać tyle, ile potrzebujesz w dhclient. Musi być uruchamiany jako root. Utwórz plik, a następnie
chmod 750 <script>
uruchom go,sudo
jeśli możesz / musisz. Używam tego w ten sposób:./crazy-mac.sh 20
bierze pierwszy argument i tworzy tyle nowych interfejsów, każdy z własnym adresem mac i ip. Nie ma kontroli poczytalności, więc używaj jej mądrze lub dodaj trochę;)Uwaga: Pamiętaj, aby najpierw połączyć się ze swoim normalnym wlan0, w przeciwnym razie to nie zadziała. how-to-connect-manual-to-a-wireless-ap Również jeśli jest to lista kontroli dostępu do systemu Mac na routerze, może być konieczne trochę wąchania, aby uzyskać listę adresów MAC akceptowanych przez router. Następnie musisz zmodyfikować skrypt, aby przeanalizować plik z tą listą i użyć wiersza dla każdego
$i
w sekwencji zamiast zezwalając na tworzenie losowych adresów mac.Uwaga 2: Możesz
sleep <N>
gdzieś umieścić pętlę, spowoduje to sekwencyjne wywoływanie wielu „urządzeń” i prawdopodobnie podniesie czerwone flagi, jeśli ktoś zwraca uwagę na sieć. Nie sądzę, że 20 normalnych urządzeń wyskakuje w ten sposób.I sprowadzić je na dół: ponownie krótki skrypt ...
A jeśli potrzebujesz listy adresów mac, działa to z bash, gdy plik jest listą jednego adresu mac na linię w pliku.
Edycja: Właśnie czytałem o urządzeniach „lagg” (przynajmniej dla unixa), których można użyć do agregacji wielu interfejsów w jednym interfejsie „lagg”, aby zwiększyć wydajność lub zapewnić awarie w przypadku awarii z jakiegokolwiek powodu.
Właśnie myślałem o tym, jak byłoby to użyteczne w sytuacji, w której przepustowość była ograniczona na adres mac, może być w takiej sytuacji użyta, abyś mógł wziąć wszystkie wirtualne interfejsy macN i agregować przepustowość w pojedynczy interfejs, a następnie może tun / tap to do wirtualnego hosta lub czegoś takiego. Jest to dla mnie interesujące, spróbuję ustawić limit przepustowości na moim osobistym adresie Wi-Fi na adres Mac, aby odtworzyć scenariusz i spróbować tego, wrócę.
źródło