Предыдущая версия справа и слева Предыдущая версия Следующая версия | Предыдущая версия |
work:cisco:cisco:ip-dhcp-static-host [2025/05/28 10:02] – rolland | work:cisco:cisco:ip-dhcp-static-host [2025/05/28 10:15] (текущий) – удалено rolland |
---|
===== Cтатические привязки IP к хостам и разные IP для одного хоста ===== | |
| |
Итак, у нас имеется железка Cisco и на этой железке крутится DHCP-сервер. Я предположу, что сам сервер уже настроен и работает, а наша задача сейчас - это закрепить за определенным компьютером или хостом с определенным MAC-адресом определенный IP, который будет всегда одинаковый. | |
| |
Как бонус - я подскажу - что делать, если искомый хост перемещается между несколькими подсетями и ему (т.е. одному и тому же MAC-адресу) нужно выдать разные IP в зависимости от того - на каком объекте он сейчас находится. | |
| |
=== Закрепляем IP к MAC === | |
| |
В Cisco есть пулы. Пулы раздают для определенной подсети IP-адреса. И вроде как понятие "пул" ассоциируется сразу с набором адресов, из которого DHCP сервер будет динамически выдавать свободный. | |
| |
Однако понятие "закрепления" MAC=IP в Cisco тоже реализуется через пулы. И создаются пулы совершенно так-же, как и обычные, за исключением одного момента: для обычных пулов мы определяем директиву //**network**// для того, чтобы указать подсеть, из которой выдавать адреса, а для статической привязки пулы мы НЕ используем директиву //**network**//, а используем //**host**//, добавляя к ней //**client-identifier**//. | |
| |
Вот пример объявления статической привязки MAC-адреса к IP: | |
<code> | |
CISCO# config t | |
CISCO(config)# ip dhcp pool MyHost | |
CISCO(dhcp-config)# host 10.0.99.15 255.255.255.0 | |
CISCO(dhcp-config)# client-identifier 0194.39e5.c0c2.a9 | |
CISCO(dhcp-config)# default-router 10.0.99.1 | |
CISCO(dhcp-config)# dns-server 10.0.0.1 10.0.1.1 | |
CISCO(dhcp-config)# end | |
</code> | |
Здесь: | |
* //**host**// : определяет IP адрес для данного хоста | |
* //**client-identifier**// : задает MAC-адрес, по которому будем привязываться | |
* //**default-router**// : Шлюз по-умолчанию | |
* //**dns-server**// : Серверы DNS | |
<note important>Очень внимательно посмотрите на строку //**client-identifier**//. Видите, что MAC адрес почему-то на одно слово длиннее, чем должен быть? Дело в том, что впереди мы добавили "01" (на самом деле MAC выглядит 94:39:E5:C0:C2:A9). Дело в том, что во время запроса на Cisco прилетает MAC в таком вот виде, т.е. с "01" вначале. Прилетает он так с Windows, с Unix-систем вначале добавляется "00" вместо "01". Возможно, на других железках запрос прилетает еще по-своему. Лучше всего сначала не привязывать хост, а посмостреть через | |
<code> | |
CISCO# sh ip dhcp bind | |
</code> | |
в каком виде прилетел MAC.</note> | |