Каталог Поиск 0 Сравнить 0 Закладки 0 Корзина Войти
Каталог
105082, Москва, ул. Фридриха Энгельса, 75с21, БЦ Бауманский ИТКОЛ
Пн - Пт: с 09-00 до 18-00 Сб: с 10-00 до 18-00 Вс: выходной
Страницы: 1
RSS
Добавьте статические IP-назначения для WAN в DHCP (обход ATT Fiber), wifiman
 
Я в данный момент запускаю wpa_supplicant, чтобы обойти шлюз AT&T, и из-за ещё одной безумной ограничения AT&T WAN должен быть настроен на DHCP. Это создает проблему, потому что я купил блок статических IP-адресов /29, который не может быть добавлен, пока WAN настроен на DHCP. Кто-нибудь знает, как можно сохранить WAN на DHCP, но при этом добавить дополнительные статические IP? Редактирование: Когда я использую ssh "ip a", я замечаю это значение, которое, я думаю, может способствовать потере WAN при использовании статического IP. "valid_lft 185sec preferred_lft 185sec". Есть ли способ установить это значение при настройке на статический IP?
 
@UI-Team, будет ли возможным в будущих версиях поддержка DHCP + Static в родном формате?
 
apt update && apt install nano  
nano /root/renew_dhcp.sh  
#!/bin/bash  
exec 200>/var/run/udhcpc.lock flock -n 200 || exit 1  
trap "exit" INT TERM EXIT  
pkill -f '/usr/bin/busybox-legacy/udhcpc -i eth8'  
/usr/bin/busybox-legacy/udhcpc -i eth8 -n -R  
chmod +x /root/renew_dhcp.sh  
crontab -e  
*/3 * * * * /root/renew_dhcp.sh  
#!/bin/bash  
 
exec 200>/var/run/udhcpc.lock  
flock -n 200 || exit 1  
 
# Set trap to ensure only 1 instance runs at a given time  
trap "exit" INT TERM EXIT  
 
# Stop any existing udhcpc processes on eth8 to prevent duplicates  
pkill -f '/usr/bin/busybox-legacy/udhcpc -i eth8'  
 
# Command to renew the DHCP lease without releasing the IP  
/usr/bin/busybox-legacy/udhcpc -i eth8 -n -R  
Эй, у меня это на самом деле заработало вчера. Я следовал инструкции отсюда: https://github.com/unifi-utilities/unifios-utilities/blob/main/static-ips/att-fiber.md Нужно было установить скрипт Onboot отсюда: https://github.com/unifi-utilities/unifios-utilities/tree/main/on-boot-script и модифицировать этот скрипт: https://gist.github.com/djdembeck/4c2f251bf7a53a0ff9e1de2305043e40#file-07-renew-public-att-dhcp-sh После небольших проб и ошибок мой WAN работает уже 15 часов.
 
Никаких проблем. Извини, я не получил уведомление по электронной почте о твоем ответе. Я следовал инструкциям, которые опубликовал Крейг Лейн, их можно найти, поискав в Google "Как обойти AT&T Gateway на UDM-Pro в 2023". Это довольно просто. В основном, нужно установить wpa_supplicant и загрузить сертификаты, которые ты извлек в соответствующую папку. Можешь протестировать, чтобы удостовериться, что это работает, установив WAN ipv4 на "DHCP". Возможно, придется перезагрузить устройство, чтобы это заработало. Время статического IP: Настаиваю статический IPv4 и использую "стандартный" IP, подсеть и адрес шлюза от шлюза. В разделе дополнительных статических IP я добавил свой блок /29. IPv6 следует установить на DHCP с "делегированием префикса" 64. А теперь интересная часть. Установи nano, если он еще не установлен: apt update && apt install nano. Теперь открой nano и создай скрипт: nano /root/renew_dhcp.sh. Первая часть скрипта указывает, что он должен выполняться в оболочке bash: #!/bin/bash. Затем установи файл блокировки, чтобы гарантировать, что только один экземпляр скрипта работает в данный момент. Команда вызывает открыть файл дескриптора '200' под /var/run/udhcpc_eth8.lock с помощью "flock", устанавливая эксклюзивную блокировку на этот файл, -n указывает на неблокирующий режим, а exit 1 говорит скрипту завершиться с кодом причины "1", если блокировка не может быть установлена (если уже есть другой экземпляр). exec 200>/var/run/udhcpc.lock flock -n 200 || exit 1. Затем установи ловушку, чтобы гарантировать, что блокировка будет освобождена, когда скрипт завершится с использованием команд прерывания, завершения и выхода: trap "exit" INT TERM EXIT. Теперь переходим к настройке процесса обновления DHCP. Мы используем встроенный клиент "udhcpc" для выполнения обновления. Эта команда гарантирует, что другие процессы udhcpc не работают на одном интерфейсе (предотвращает избыточное использование памяти и конфликты). Замените eth8 на соответствующий порт, используемый в вашей настройке. Вы можете выполнить "ip a", чтобы проверить имя порта. Стандартный WAN — "eth 8", так как нумерация портов начинается с 0. pkill -f '/usr/bin/busybox-legacy/udhcpc -i eth8'. Затем мы запрашиваем udhcpc обновить WAN DHCP IP, не освобождая существующий IP, чтобы избежать отключений. -i указывает на интерфейс WAN, и снова я использую eth8, также известный как порт стандартного WAN, -n указывает обновление без освобождения, -R указывает не запрашивать назначенный DHCP IP. Снова замените "eth8" на соответствующий порт. /usr/bin/busybox-legacy/udhcpc -i eth8 -n -R. Это все для скрипта. Вам нужно сохранить скрипт и выйти из nano. Теперь вам нужно сделать скрипт исполняемым: chmod +x /root/renew_dhcp.sh. Теперь мы создадим таймер с помощью "crontab". Я выбрал nano в качестве редактора по умолчанию, но вы можете выбрать vim, если хотите. Запустите: crontab -e. В самом низу добавьте команду для таймера, сохраните изменения и выйдите. */3 * * * * /root/renew_dhcp.sh. Теперь все должно работать. Убедитесь, что вы сохранили инструкции и сделали резервную копию скрипта, так как он может потребоваться для перезагрузки после обновления FW. Я перезагрузил свой UDM Pro после завершения, чтобы убедиться, что все перезагрузилось правильно. Вот полный скрипт, который вы можете скопировать и вставить. Просто убедитесь, что вы заменили "eth8" на имя порта, который использует ваше соединение AT&T Fiber. #!/bin/bash

exec 200>/var/run/udhcpc.lock
flock -n 200 || exit 1

# Установите ловушку, чтобы гарантировать, что только 1 экземпляр работает в данный момент
trap "exit" INT TERM EXIT

# Остановите любые существующие процессы udhcpc на eth8, чтобы предотвратить дубликаты
pkill -f '/usr/bin/busybox-legacy/udhcpc -i eth8'

# Команда для обновления аренды DHCP без освобождения IP
/usr/bin/busybox-legacy/udhcpc -i eth8 -n -R
 
@wrxguy привет! Мне было бы интересно узнать, какие шаги и скрипт ты использовал, чтобы это сработало. Скорее всего, я тоже это сделаю, если для меня это будет достаточно просто.
 
Эй, в общем, я решил пойти по пути создания собственного скрипта... К счастью, у меня есть опыт работы с сервером на Debian 12. В общем, я создал скрипт, который использует crontab -e для выполнения каждые 180 секунд. Скрипт вызывает встроенный сервер dhcpc, чтобы инициировать обновление DHCP на eth8 без освобождения IP. Я также настроил его так, чтобы он "убирался" за собой, чтобы не запускать кучу процессов. Если хочешь, я могу выложить скрипт (если это разрешено?). На данный момент у меня постоянное время работы с этим методом... Хотя, встроенный вариант использования DHCP с добавлением статических IP без установки шлюза был бы самым оптимальным решением.
Страницы: 1
Читают тему (гостей: 1)