Тут показані розбіжності між вибраною ревізією та поточною версією сторінки.
Порівняння попередніх версій Попередня ревізія Наступна ревізія | Попередня ревізія Наступна ревізія По сторонах наступні версії | ||
option82 [2022/10/05 18:45] pautina [Настройка Ubilling и DHCP option 82] |
option82 [2023/04/22 18:36] pautina |
||
---|---|---|---|
Рядок 64: | Рядок 64: | ||
log(info, " | log(info, " | ||
if exists agent.remote-id and exists agent.circuit-id { | if exists agent.remote-id and exists agent.circuit-id { | ||
- | | + | if binary-to-ascii(16, |
- | set switch-mac = concat(" | + | set switch-mac = concat(" |
- | to-ascii(16, | + | # log(info, |
- | } else { | + | } else { |
- | set switch-mac = binary-to-ascii(16, | + | # set switch-mac = binary-to-ascii(16, |
- | } | + | # log(info, |
- | set clip = binary-to-ascii(10, | + | set switch-mac = concat ( |
- | set clremote = binary-to-ascii(16, | + | suffix (concat (" |
- | set clcircuit = binary-to-ascii(10, | + | suffix (concat (" |
- | set switch-port = binary-to-ascii(10, | + | suffix (concat (" |
- | set switch-port-vlan = binary-to-ascii(10, | + | suffix (concat (" |
+ | suffix (concat (" | ||
+ | suffix (concat (" | ||
+ | ); | ||
+ | # log(info, | ||
+ | } | ||
+ | set clip = binary-to-ascii(10, | ||
+ | set clremote = binary-to-ascii(16, | ||
+ | set clcircuit = binary-to-ascii(10, | ||
+ | set switch-port = binary-to-ascii(10, | ||
+ | set switch-port-vlan = binary-to-ascii(10, | ||
+ | |||
+ | log( info, | ||
- | | + | log( info, |
- | ", | + | |
} else { | } else { | ||
- | | + | set clhw = concat ( |
- | suffix (concat (" | + | suffix (concat (" |
- | suffix (concat (" | + | suffix (concat (" |
- | suffix (concat (" | + | suffix (concat (" |
- | suffix (concat (" | + | suffix (concat (" |
- | suffix (concat (" | + | suffix (concat (" |
- | suffix (concat (" | + | suffix (concat (" |
- | ); | + | ); |
- | | + | log( info, |
} | } | ||
log(info, " | log(info, " | ||
Рядок 188: | Рядок 199: | ||
Для более удобного вылавливания пар remote-id и circuit-id существует сервис аналогичный [[uhw|UHW]] находящийся в **docs/ | Для более удобного вылавливания пар remote-id и circuit-id существует сервис аналогичный [[uhw|UHW]] находящийся в **docs/ | ||
+ | | ||
+ | Для того, щоб користувачі могли змінювати свої пристрої скільки завгодно разів, та не чекати поки на сервері закінчиться ліза під їх адресу - до DHCP серверу необхідно застосувати патч та перезібрати пакет з ісходного коду. | ||
+ | |||
+ | < | ||
+ | --- server/ | ||
+ | +++ server/ | ||
+ | @@ -31,6 +31,7 @@ | ||
+ | # | ||
+ | # | ||
+ | +extern int flag_dd_option; | ||
+ | | ||
+ | | ||
+ | | ||
+ | @@ -4900,8 +4901,13 @@ | ||
+ | { | ||
+ | if (LEASE_NOT_EMPTY(pool-> | ||
+ | | ||
+ | - else | ||
+ | + else if (LEASE_NOT_EMPTY(pool-> | ||
+ | | ||
+ | + else if (flag_dd_option) | ||
+ | + { | ||
+ | + candl = LEASE_GET_FIRST(pool-> | ||
+ | + candl -> ends = cur_time; | ||
+ | + } | ||
+ | } | ||
+ | |||
+ | /* | ||
+ | </ | ||
+ | |||
+ | |||
+ | < | ||
+ | --- server/ | ||
+ | +++ server/ | ||
+ | @@ -57,6 +57,7 @@ | ||
+ | gid_t set_gid = 0; | ||
+ | # | ||
+ | |||
+ | +int flag_dd_option = 0; | ||
+ | | ||
+ | int server_identifier_matched; | ||
+ | |||
+ | @@ -184,6 +185,7 @@ | ||
+ | | ||
+ | # | ||
+ | | ||
+ | + " | ||
+ | | ||
+ | | ||
+ | } | ||
+ | @@ -329,6 +331,8 @@ | ||
+ | | ||
+ | | ||
+ | # | ||
+ | + } else if (!strcmp (argv [i], " | ||
+ | + flag_dd_option = 1; | ||
+ | } else if (!strcmp (argv [i], " | ||
+ | if (++i == argc) | ||
+ | | ||
+ | </ | ||
+ | |||
+ | Після того, як перезібрали пакет та встановили його в системі, | ||
+ | <file ini rc.conf> | ||
+ | dhcpd_flags=" | ||
+ | </ | ||
+ | |||
+ |