Krótki opis:
Potrzebuję mojej karty Ethernet (en0), aby zobaczyć cały ruch poniżej 192.168.2.xxx.
Jednak muszę również używać karty Wi-Fi (en1) do całego innego ruchu.
System operacyjny: OS X Lion
Korzystam z osobnej lokalizacji sieciowej, aby poradzić sobie z tym konkretnym zastosowaniem (ponieważ dotyczy projektu robotyki, który komunikuje się przez Ethernet). Ethernet (en0) musiał zostać skonfigurowany jako statyczny adres IP (192.168.2.10) zgodnie z wymaganiami dla urządzenia, do którego się podłączam. Wszystkie połączenia na karcie Ethernet (en0) powinny być 192.168.2.xxx, jak określono powyżej. WiFi (en1) jest skonfigurowane jako DHCP dla routera, ponieważ nie ma sensu przypisywać go jako statycznego dla ruchu ogólnego przeznaczenia. Ethernet (en0) jest ustawiony jako priorytet nad WiFi (en1).
Chciałbym również zachować to pod preferencjami lokalizacji sieci, jeśli to w ogóle możliwe, ponieważ nie wymagam, aby ta funkcja była cały czas włączona.
Byłbym bardzo wdzięczny za twoją pomoc w tej sprawie. Nikt z kim rozmawiałem nie wie, jak to rozwiązać.
Odpowiedzi:
Rozwiązanie było niezwykle proste.
Myślałem, że pole routera jest wymagane, więc go wypełniłem. Moje połączenie Ethernet ma „router” na powiedzenie, ale nie jest używane do uzyskiwania dostępu do ogólnych połączeń. Wypełniając to pole, Mac OS automatycznie spróbuje utworzyć domyślną trasę przez Ethernet NIC. Spowodowałoby to przekierowanie całego ruchu różnego typu przez niewłaściwy router.
Próbowałem też usunąć tę trasę z tabel routingu, zanim znalazłem rozwiązanie mojego problemu. Spowodowałoby to odpowiednie usunięcie trasy i pozwoliłoby na prawidłowe działanie mojego oprogramowania. Jednak po około minucie trasa została ponownie dodana (jak później odkryłem) przez system operacyjny. Po ponownym dodaniu trasy połączenia nie powiedzie się, więc musiałem ponownie uruchomić proces od nowa. Ta poprawka okazała się nieproduktywna.
Mam nadzieję, że to pomoże komuś z problemami z siecią.
źródło
( źródło )
W twoim przypadku ustaw ograniczoną sieć nad połączeniem internetowym. OS X spróbuje przekierować pakiety do pierwszego interfejsu. W przypadku pakietów przeznaczonych dla tej sieci będzie działać dobrze. W przypadku pakietów nieprzeznaczonych dla tej sieci zobaczy, że nie ma bramy ani trasy do Internetu, i przekieruje je do następnego interfejsu, który jest podłączony do Internetu.
Jeśli twoja mniejsza sieć ma routery lub bramę, do której musisz uzyskać dostęp, musisz edytować tabele routingu, aby powiedzieć OS X, które adresy IP można znaleźć w których sieciach.
Ale wierzę, że w twoim przypadku proste rozwiązanie polegające na nadaniu mniejszej sieci wyższego priorytetu zadziała.
źródło