Wymuś na serwerze DHCP odnowienie adresu IP komputera klienckiego bez robienia czegokolwiek na komputerze klienckim

9

Chciałbym wiedzieć, czy istnieje sposób, aby zmusić serwer DHCP do natychmiastowego odnowienia adresu IP komputera klienckiego, bez konieczności wchodzenia na komputer kliencki? Wyobraź sobie, że nie mam dostępu do komputera klienckiego.

Oto mój scenariusz

Klient najpierw otrzymuje losowy adres IP, na przykład A, z serwera DHCP, gdy jest podłączony do sieci LAN. Wyobraź sobie, że ktoś podłączył klienta do sieci LAN i na początku nie mapował żadnego adresu IP na jego adres MAC w pliku dhcpd.conf.

Chciałbym tutaj wspomnieć, że istnieją inne maszyny w tej samej podsieci, które już mają mapowanie adresu IP na adres MAC skonfigurowane w pliku dhcpd.conf.

Następnie modyfikuję plik dhcpd.conf, aby zmapować nowy adres IP B klienta na jego adres MAC.

Ale teraz potrzebuję, aby stary adres IP A został natychmiast zmieniony na B.

Nie chcę modyfikować domyślnego czasu dzierżawy ani mieszać się z czasem dzierżawy w pliku dhcpd.conf.

Wszelkie inne sposoby, takie jak ponowne uruchomienie usług, są w porządku, ponieważ z wyjątkiem tego jednego komputera wszystkie pozostałe mają już adresy IP powiązane z adresami MAC w pliku dhcpd.conf.

Uwaga: Nie mogę zrestartować żadnych maszyn w sieci LAN, nawet maszyny z serwerem dhcp.

Mam nadzieję, że wyraziłem się całkiem jasno.

Dzięki

SSaikia_JtheRocker
źródło
Jakiego rodzaju klienci?
Mike,
Mike: Komputery z zainstalowanym systemem operacyjnym i podłączone do sieci LAN.
SSaikia_JtheRocker

Odpowiedzi:

7

FORCERENEW przewiduje mechanizm serwer, aby wskazać klientowi do ponownego nowego.

Nie jestem pewien, czy jest zaimplementowany w twojej dystrybucji.

David
źródło
1
Niestety większość implementacji klienta DHCP nie obsługuje tego rozszerzenia. Systemy Windows nie (do tej pory włącznie z Win7, nie jestem pewien co do Win8, ale nie sądzę, żeby MS tak bardzo zmieniło klienta DHCP).
Tonny
8

Nie można przełączyć samego DHCP. Nie ma na to przepisów.

Jedyne, co możesz zrobić, to zmusić klienta do rozłączenia / ponownego połączenia.
- Pociągnij za kabel.
- Jeśli klient jest na zarządzanym przełączniku, do którego masz dostęp, możesz wyłączyć / włączyć port przełączania.
- Jeśli możesz zalogować się zdalnie do klienta i masz wymagane uprawnienia na kliencie, możesz być w stanie wyłączyć / włączyć interfejs sieciowy po stronie klienta. Wymagałoby to skryptu, aby to zrobić, który jest uruchamiany bez potrzeby „sesji początkowej”, ponieważ zostałby on przerwany jako sson w momencie rozłączenia. (Np. Nohup na * nix lub crontab.) W systemie Windows zdalne ponowne uruchomienie usługi TCPIP załatwi sprawę, jeśli masz konto administratora dla tego klienta.

Tonny
źródło
1
Dlaczego klient odnawia żądanie DHCP w przypadku awarii sieci? Przynajmniej w moim domu nie.
1
@EricDANNIELOU: Jeśli klient nie jest w stanie odróżnić awarii sieci od ciągnięcia kabla i podłączania go do innej sieci, musi zweryfikować dzierżawę DHCP. Ale w tym celu musisz powiedzieć portowi przełącznika, aby faktycznie odłączył się od kabla, aby klient myślał, że kabel został wyciągnięty.
BatchyX,
2
@EricDANNIELOU Po utracie łączności sieciowej KAŻDY komputer musi ponownie ustanowić dzierżawę DHCP. W przeciwnym razie nie będzie wiedział, czy nadal jest w tej samej sieci LAN. Mimo wszystko wie, że po prostu został ponownie załatany w innej sieci LAN. Dlatego każdy system operacyjny wykonuje (ponownie) nabywa DHCP. Być może tego nie zauważyłeś, ale tak naprawdę się dzieje. Fakt, że zwykle otrzyma ten sam adres, co wcześniej, nie ma z tym nic wspólnego. To dlatego, że większość systemów operacyjnych prosi serwer DHCP o ten sam adres, co zwykle jest przyznawane. Ale serwer DHCP może oferować inny adres i właśnie tego chce plakat.
Tonny,
1
tonny @BatchyX: Ciekawe, spróbuję to rozgryźć. Dziękuję za szczegóły.
1
Nie można go odtworzyć: próba odłączenia punktu dostępu wify i ponownego zainstalowania go -> tcpdump nie przechwycił ramki dhcp. Myślę, że to z powodu mojej dziwnej konfiguracji z Wi-Fi.
3

To nie jest „natychmiastowe”, ale jest tak szybkie, jak to możliwe.

  1. Dodaj rezerwację w dhcpd.conf.
  2. Restart dhcpd .
  3. Zerwij połączenie sieciowe komputer-klient. (Najlepiej, jeśli wyłączysz zarządzany port przełączania, do którego podłączona jest maszyna klinetowa, bardziej nużące byłoby wyciągnięcie zworki z panelu krosowego do przełącznika niezarządzanego).
  4. Wygaś starą dzierżawę z dhcpd przez omshell (1) , zmieniając endsczas na kiedyś (np. 00: 00: 00: 00).
  5. Przywróć połączenie sieciowe komputer-klient.

    • Ważne jest, aby pierwsza dzierżawa wygasła, w przeciwnym razie komputer kliencki dokona DHCPREQUESTpierwszego adresu, a dhcpd przyzna ją, ponieważ nadal będzie to ważna dzierżawa.
    • Przeniesienie komputera klienckiego do innej sieci VLAN bez usuwania dzierżawy może działać, ale jest to rzut oka na to, która ważna dzierżawa dhcpd przyzna, gdy komputer kliencki powróci do oryginalnej sieci VLAN.
    • Dodanie wpisu hosta ze stałym adresem automatycznie generuje wpis dzierżawy, dlatego czas wygaśnięcia pierwszej dzierżawy jest modyfikowany, a nie zmieniany jest jego adres IP.
84104
źródło
1

O ile wiem, nie możesz: serwer Dhcp nie ma możliwości działania na kliencie, gdy poda mu adres IP. A ponieważ nie masz dostępu do klienta, jedynym sposobem na zmianę jego adresu IP jest czekanie na upływ czasu.


źródło