Polecenie route.exe a domyślna brama
mimimi - 03-05-10 12:56
Polecenie route.exe a domyślna brama
Hej,
Mam taki problem.
W kompie mam dwie karty sieciowe A i B. Chce je meć włączone obie na raz. Część ruchu chce puścić przez katrę A a część przez kartę B. Sprawę załatwiam odpowiednim wpisem do tablicy routingu poprzez wykonanie polecenia route.
Jednak efektem takiedzo działania jest mizerny ponieważ domyślna brama jest i tak ustawiona na kartę A. I jak rozumiem, cały ruch i tak idzie na bramę domyślną. Zrzut z polecenia route.exe
Kod:
255.255.255.255 255.255.255.255 X.X.X.X X.X.X.X 1
255.255.255.255 255.255.255.255 X.X.X.X X.X.X.X 1
255.255.255.255 255.255.255.255 X.X.X.X X.X.X.X 1
255.255.255.255 255.255.255.255 X.X.X.X X.X.X.X 1
Default Gateway: 192.168.33.254
===========================================================================
Persistent Routes:
None
Jak więc zmienić lub usunąć wartość wpisu Default Gateway, tak żeby wprowadzone przeze mnie do tablicy rutingu rekordy miały zastosowanie?
Krizz - 03-05-10 22:07
Powinno działać jeśli jest poprawnie skonfigurowane. Tylko, że ten zrzut, ktory pokazałeś, kompletnie nic nie mówi i nie ma przez to możliwości zweryfikowania czy jest tablica routingu jest poprawnie skonfigurowana. Wrzuć pełny output polecenia route print, ewentualnie ukryj publiczny IP, jeśli jest jakiś.
mimimi - 04-05-10 00:43
================================================== =========================
Interface List
0x1 ........................... MS TCP Loopback interface
0x2 ...00 50 56 XX XX XX ...... VMware Virtual Ethernet Adapter for VMnet8
0x3 ...00 50 56 XX XX XX ...... VMware Virtual Ethernet Adapter for VMnet1
0x4 ...00 24 d6 XX XX XX ...... Intel(R) WiFi Link 5100 AGN - Packet Schedule
iniport
0x5 ...00 24 e8 XX XX XX ...... Intel(R) 82567LM Gigabit Network Connection -
cket Scheduler Miniport
0x10007 ...90 4c e5 XX XX XX ...... Bluetooth LAN Access Server Driver - Pack
Scheduler Miniport
================================================== =========================
================================================== =========================
Active Routes:
Network Destination Netmask Gateway Interface Metric
0.0.0.0 0.0.0.0 192.168.1.254 192.168.1.233 10
127.0.0.0 255.0.0.0 127.0.0.1 127.0.0.1 1
192.168.1.0 255.255.255.0 192.168.1.233 192.168.1.233 10
192.168.1.233 255.255.255.255 127.0.0.1 127.0.0.1 10
192.168.1.255 255.255.255.255 192.168.1.233 192.168.1.233 10
192.168.50.0 255.255.255.0 192.168.50.1 192.168.50.1 20
192.168.50.1 255.255.255.255 127.0.0.1 127.0.0.1 20
192.168.50.255 255.255.255.255 192.168.50.1 192.168.50.1 20
192.168.227.0 255.255.255.0 192.168.227.1 192.168.227.1 20
192.168.227.1 255.255.255.255 127.0.0.1 127.0.0.1 20
192.168.227.255 255.255.255.255 192.168.227.1 192.168.227.1 20
224.0.0.0 240.0.0.0 192.168.1.233 192.168.1.233 10
224.0.0.0 240.0.0.0 192.168.50.1 192.168.50.1 20
224.0.0.0 240.0.0.0 192.168.227.1 192.168.227.1 20
255.255.255.255 255.255.255.255 192.168.1.233 10007 1
255.255.255.255 255.255.255.255 192.168.1.233 192.168.1.233 1
255.255.255.255 255.255.255.255 192.168.1.233 5 1
255.255.255.255 255.255.255.255 192.168.50.1 192.168.50.1 1
255.255.255.255 255.255.255.255 192.168.227.1 192.168.227.1 1
Default Gateway: 192.168.1.254
================================================== =========================
Persistent Routes:
None
Chcę dodać jeden publiczny adres QQQ.VVV.PPP.ZZZ do tej tablicy zeby komunikował sie na czwartym interfejsie 0x4 z nr 192.168.1.233
route add QQQ.VVV.PPP.ZZZ 192.168.1.233 if 0x4
Krizz - 04-05-10 08:54
Priorytet trasy ustawia się poprzez metrykę - im niższa, tym wyższy priorytet ma dana trasa. Zatem spróbuj ustawić trasę stałą stosując metrykę równą 1:
Kod:
route -p add QQQ.VVV.PPP.ZZZ mask 255.255.255.255 192.168.1.233 metric 1 if 4
Zastanawiają mnie te trzy wpisy:
Kod:
255.255.255.255 255.255.255.255 192.168.1.233 10007 1
255.255.255.255 255.255.255.255 192.168.1.233 192.168.1.233 1
255.255.255.255 255.255.255.255 192.168.1.233 5 1
Coś jest z nimi nie tak. Wszystkie definiują tę samą trasę (broadcast), tylko za każdym razem za pomocą innego interfejsu. Nie powinno to mieć żadnego znaczenia, ale wygląda dziwnie, tak jakby wszystkie trzy interfejsy miały ten sam IP (co oczywiście nie jest możliwe). Tak było "z automatu"?
Edit.: teraz tak myślę, że to nie będzie działać. Internet wifi znajduje się w tej samej podsieci co interfejs domyślny i brama domyślna, a musiałby być w innej, bo tak to to nie ma sensu. Po drugie, nie można stosować ip interfejsu jako gateway dla innych docelowych miejsc, niż one same. Po prostu interfejs jest bramą tylko dla siebie samego i dla broadcastu, niczego więcej. Więc nie można stosować zapisu takiego jak powyżej, bo to po prostu nigdzie nie pójdzie - musisz wskazać bramę odpowiednią dla podsieci, do której jest podłaczony dany interfejs, a dla wifi bramą jest wciąż brama domyślna (.254), ta sama co dla kabla. Możesz wciąż zastosować metrykę by wymusić użycie danego interfejsu w przypadku owego konkretnego publicznego IP, tylko nie widzę celowości takiego działania, skoro i tak całość musi przejść przez 254.
Kod:
route -p add QQQ.VVV.PPP.ZZZ mask 255.255.255.255 192.168.1.254 metric 1 if 4
mimimi - 04-05-10 11:54
Stąd moje pytanie. Czy wszystko by działało gdyby pozbyć się interfejsu domyślnego? Czy wszystko by latało wtedy zgodnie z dodanymi wpisami?
Jak edytować IP domyślnej bramy?
Tak, całe wpisy są z automatu. W gruncie rzeczy to mam chyba pięć kart sieciowych: Ethernet, WiFi, dwie wirtualne VMware i jedna do VPN. Blutootha nie liczę
Krizz - 04-05-10 14:21
No ale czemu chcesz modyfikować domyślną bramę? Przecież wifi, jak podejrzewam, też masz wpięte przez AP do tej samej podsieci z tą samą bramą...
A domyślna brama to ta, która jest skonfigurowana dla pierwszego fizycznego interfejsu. Tak sądzę.
mimimi - 04-05-10 19:52
No po to żeby cały ruch mi przez nią nie szedł tędy. Jakbym nie miał domyślnej bramy to rozumiem, ze wszystko by szlo z tych wpisów. Tak właściwie to po co mi domyślna brama jeśli tablica rutingu pokrywa mi cały trafik. Dla mnie to wygląda jakby domyślna brama przeszkadzała lub wykluczała idee tych wpisów bo cokolwiek nie wpiszesz to i tak pójdzie przez tą bramę, czyż nie tak?
A tak w ogóle to jaka jest różnica pomiędzy IP bramy i IP interfejsu? Czy to czasem nie to samo?
mimimi - 04-05-10 20:10
Może powiem od początku:
Mam dwa interfejsy A i B:
A - IP kompa w tym interfejsie to 192.168.29.40, brama z bramą domyślna 192.168.29.254
B - IP kompa w tym interfejsie to 192.168.33.75 z bramą domyślną 192.168.33.254
Maski podsieci w obu interfejsach to 24.
Domyślnym interfejsem jest A (w sensie najczęściej używanym, >obowiązkowym<). I teraz tak, wtedy gdy pracuję używając A chciałbym włączyć sobie interfejs B (mniej restrykcyjny) i puścić komunikację do jednego publicznego IP. Oto mi chodzi.
Da się?
Krizz - 04-05-10 20:49
Cytat:
(Wiadomość 109424)
Dla mnie to wygląda jakby domyślna brama przeszkadzała lub wykluczała idee tych wpisów bo cokolwiek nie wpiszesz to i tak pójdzie przez tą bramę, czyż nie tak?
Jak każdy system operacyjny, winda opera działanie interfejsów sieciowych na domyślnej tablicy routingu, właśnie tej, którą wyświetlasz poleceniem 'route print'. Tworzy się ona automatycznie, przy aktywacji i skonfigurowaniu interfejsu sieciowego. Dokładasz interfejs - ulega ona automatycznej, "inteligentnej" aktualizacji. Jeżeli pousuwasz te wpisy z tablicy routingu, nie będzie możliwości kierowania ruchem sieciowym - sieć na kompie będzie martwa.
Cytat:
(Wiadomość 109424)
A tak w ogóle to jaka jest różnica pomiędzy IP bramy i IP interfejsu? Czy to czasem nie to samo?
Nie to samo. Bramę określa adres urządzenia w sieci, które zajmuje się dalszą obsługą pakietu. Niekoniecznie musi być to brama dosłownie, może być to też router łączący dwie osobne podsieci albo, tak jak w przypadku powyżej, adres interfejsu, jeśli jest to "przystanek końcowy" dla pakietu - tak jest w przypadku interfejsu loopback albo broadcastów.
Cytat:
Domyślnym interfejsem jest A (w sensie najczęściej używanym, >obowiązkowym<). I teraz tak, wtedy gdy pracuję używając A chciałbym włączyć sobie interfejs B (mniej restrykcyjny) i puścić komunikację do jednego publicznego IP. Oto mi chodzi.
Da się?
No to przedstawiłeś tu sytuacje inaczej niż przedtem. Jeśli są dwie osobne podsieci i dwie osobne bramy, takie skonfigurowanie tablicy routingu ma sens.
Kod:
route -p add <publiczny-ip> mask 255.255.255.255 192.168.33.254 metric 10 if 2
Przy czym określenie interfejsu raczej nie jest istotne, bo wynika on z adresu bramy, która znajduje się tylko w podsieci podłączonej do drugiego interfejsu. Ważne jest określenie metryki, bo jeżeli do publicznego ip da się dostać przez obydwa interfejsy, wybrana zostanie ta trasa, która ma niższą metrykę.
mimimi - 05-05-10 20:07
I wszystko jasne!!!
I wszystko jasne!!! prawie :-)
Dzięki. Udało się.
Błąd jaki robiłem to pisałem IP kompa zamiast IP bramy. Dzięki za objaśnienia.
Interfejs podaję jednak hexalnie 0x2. Nie stosuję też opcji -p (persistant) gdyż moje publiczne IP się zmienia więc każdorazowo przed wpisem w tablicę rutingu odnawiam je sobie.
Zaobserwowałem jednak, że domyślna brama czasem się zmienia. Muszę jednak poobserwować ro dokładniej. Na pewno nie jest to wynikiem zmiany którą wprowadziłem.
Dzięki jeszcze raz.
PS:Krizz, Nie wiem dlaczego ale nie mogę dać Ci reputacji :-(
Krizz - 05-05-10 21:36
Cieszę się, że mogłem pomóc :)
Cytat:
(Wiadomość 109431)
PS:Krizz, Nie wiem dlaczego ale nie mogę dać Ci reputacji :-(
Zepsuli :)
mimimi - 17-06-10 13:32
Już wiem czemu zmienia mi się domyślna brama.
Interfejs przez który puszczam ruch do mojego pojedyńczego IP jest na WiFi. Resztę ruchu puszczam przez drugi interfejs - kablowy. Na tym drugim interfejsie mam podłączenia do - nazwijmy - to 'stałych' serwisów: mail, zamapowane dyski, serwery licencji, etc.
Przy takiej konfigurecji podaję moje polecenie route i wszystko gra i śpiewa. Domyślna brama pozostaje na interfejsie, tak jak powinna być, ' kablowym'.
Problem polega na tym, że połączenie WiFi zrywa się a po połączeniu ponownym zmienia mi się domyśna brama z 'kablowej' na 'radiową' co nisczy mi wszystkie połączenia.
Czy w jakiś sposób mogę wymusić, żeby brama domyślna nie zmieniała się po restarcie interfejsu?