Как управлять диапазонами IP горячих точек Администратора сети?

Сервер имеет два интерфейса WiFi, оба настроенные через Администратора сети, чтобы быть горячими точками.

Связанные клиенты получают дюйм/с в диапазонах 10.42.0.0/24 и 10.42.1.0/24 (AFAICS через dnsmasq вызванный NM). Я должен смочь присвоить определенный диапазон определенному интерфейсу. К сожалению, Администратор сети присваивает им непредсказуемо (так wlan0 может добраться 10.42.0.0 сегодня и 10.42.1.0 завтра; затем wlan1 получает остающийся диапазон), который портит мой iptables потому что правила маршрутизации отличаются для этих интерфейсов.

Я попробовал dhcp-range= опция в /etc/dnsmasq.conf (который не присутствовал, поскольку NM настраивает dnsmasq через командную строку), и некоторые другие идеи, но не может найти осуществимое решение.

Какие-либо мысли о том, как я могу управлять, какой диапазон IP присвоен который интерфейс?

2
задан 3 November 2016 в 04:59

3 ответа

Можно определить используемую подсеть IPv4 путем конфигурирования одного ручного адреса, как

nmcli connection modify $SHARED_NAME ipv4.addresses 192.168.2.5/24

Это документируется в man nm-settings, см. ipv4.method.

/etc/NetworkManager/dnsmasq.d для использования dnsmasq как плагин DNS, не для Вашего варианта использования совместного использования соединения. Для этого это вместо этого/etc/NetworkManager/dnsmasq-shared.d - по крайней мере, в последних версиях NM. Но Вам не должно быть нужно это.

3
ответ дан 2 December 2019 в 01:36

После часов попытки различных решений мне наконец удалось указывать подсеть для соединения Горячей точки с помощью Администратора сети и затем устанавливать ручной IP на клиентском устройстве для своего рода статического IP. Ни один из dnsmasq/dhcp методов не работает с Администратором сети. Необходимо отредактировать файл соединения Администратора сети. Эти файлы сгенерированы для каждого соединения в следующем каталоге:

/etc/NetworkManager/system-connections

я полагаю, что при создании Горячей точки новый файл соединения создают и называют Горячей точкой. Необходимо отредактировать этот файл. Удостоверьтесь, что Вы редактируете файл соединения Горячей точки, или это не будет работать! Изменитесь/добавьте следующие строки под разделом [ipv4] для установки подсети. Удостоверьтесь, что это имеет строку method=shared, и используйте любой IP-адрес, который Вы хотите для address1=, и NetworkManager выпустит все соединительные устройства IP в той же подсети. Формат для этой строки address1=ip/subnetmask,gateway. Шлюз должен совпасть с IP, Вот то, на что эти [ipv4] должен быть похожим раздел:

[ipv4]
dns-search=
method=shared
address1=192.168.125.1/24,192.168.125.1

, После того как Вам завершили это, сохраните файл и выполните следующее для перезапуска Администратора сети:

sudo service network-manager restart

Теперь Ваши подключенные устройства должны быть выпущены IP-адрес под той же подсетью как IP, который Вы ввели. В этом примере это было бы 192.168.125.x.

Для получения статического IP сделайте это на клиентском устройстве. Установите ручной IP для этого соединения горячей точки под той же подсетью, с помощью той же маски подсети и шлюза, которые вводились в файл соединения Горячей точки.

Вот мой целый файл соединения Горячей точки для ссылки:

[connection]
id=Hotspot
uuid=14032jb9-43c6-41c6-8d56-8b6b0f7xcce9
type=wifi
interface-name=wlan0
permissions=
secondaries=
timestamp=1486816539

[wifi]
mac-address=7C:84:DB:62:7B:3F
mac-address-blacklist=
mac-address-randomization=0
mode=ap
seen-bssids=7C:84:DB:62:7B:3F;
ssid=yournetworkname

[wifi-security]
group=
key-mgmt=wpa-psk
pairwise=
proto=
psk=yourpassword

[ipv4]
dns-search=
method=shared
address1=192.168.125.1/24,192.168.125.1

[ipv6]
addr-gen-mode=stable-privacy
dns-search=
ip6-privacy=0
method=ignore

Документация относительно этой установки в Администраторе сети может быть прочитана здесь:

https://people.freedesktop.org/~lkundrak/nm-docs/nm-settings.html

Имя Ключа установки

Таблицы 36. ipv4: метод

Тип Значения: строка

Значение по умолчанию:

Описание Значения: метод конфигурации IP. NMSettingIP4Config и NMSettingIP6Config и поддержка, "автоматическая", "ручная", и "локальная для ссылки". См. определенную для подкласса документацию для других значений. В целом, для "автоматического" метода, свойства, такие как "DNS" и "маршруты" указывают информацию, которая прибавляется к информации, возвращенной из автоматической конфигурации. "ignore-auto-routes" и "ignore-auto-dns" свойства изменяют это поведение. Для методов, которые не подразумевают восходящей сети, такой, как "совместно использовано" или "локальный для ссылки", эти свойства должны быть пустыми. Для "совместно использованного" метода IPv4 подсеть IP может быть настроена путем добавления, что один адрес руководства IPv4 или иначе 10.42.x.0/24 выбран.

самая важная часть:

Для "совместно использованного" метода IPv4, подсеть IP может быть настроена путем добавления, что один адрес руководства IPv4 или иначе 10.42.x.0/24 выбран.

3
ответ дан 2 December 2019 в 01:36

Следующее, кажется, работает хорошо - эти команды вынуждают Администратора сети присвоить выбранные диапазоны DHCP точкам доступа Wi-Fi (10.42.0.x к wifiname1; 10.42.1.x к wifiname2):

nmcli connection modify wifiname1 ipv4.addresses 10.42.0.1
nmcli connection modify wifiname2 ipv4.addresses 10.42.1.1

Примечание: wifinameN (N=1/2) соответствуют файлам в /etc/NetworkManager/system-connections.

1
ответ дан 2 December 2019 в 01:36

Другие вопросы по тегам:

Похожие вопросы: