impatt |
|
Темы:
29
Сообщения:
100
Участник с: 04 июня 2007
|
Привет всем. Есть такая задача в общем виде, последовательно по шагам: а) поднять интерфейс и назначить на него IPv6 адрес; (вручную делается тривиально, типа ip l set dev wlp0s29f7u2 up; ip -6 a add <адрес> dev wlp0s29f7u2) б) запустить hostapd; в) запустить radvd; Шаг а) что-то не получается сделать с помощью netctl: в скрипте /usr/lib/network/network есть проверка на флаг "tentative" на интерфейсе, а как это обойти - непонятно. Есть идеи ? Да, уточню: интерфейс wifi, но в профиле netctl я пишу ethernet, ибо специфики настройки wifi от netctl не требуется, она даже, как мне кажется. мешает. Ну и профиль, который пытаюсь запустить: ----- escription='A simple AP' Interface=wlp0s29f7u2 Connection=ethernet SkipNoCarrier=yes IP6=static Address6=('2001:470:1f0b:d36:b180::1/76') Gateway6='2001:470:1f0b:d36:b100::2' ----- |
kurych |
|
Темы:
0
Сообщения:
1395
Участник с: 06 ноября 2011
|
netctl пытается быть универсальной для большинства ординарных случаев. Если Вам не подходит, просто сделайте свой юнит Type=oneshot, где и пропишите нужные команды "ExecStart=ip -6 ..." в необходимом количестве. Подробности в: man systemd.unit man systemd.service |
impatt |
|
Темы:
29
Сообщения:
100
Участник с: 04 июня 2007
|
kurychСпасибо, попробовал. Сделал так: --- [Unit] Description=wifi IPv6 free access point BindsTo=sys-subsystem-net-devices-wlp0s29f7u2.device After=sys-subsystem-net-devices-wlp0s29f7u2.device [Service] Type=oneshot ExecStart=/usr/bin/bash -c '/usr/bin/ip l set wlp0s29f7u2 up; /usr/bin/sleep 1; /usr/bin/ip -6 a add 2001:470:1f0b:d36:b180::1/76 dev wlp0s29f7u2' ExecStop=/usr/bin/bash -c '/usr/bin/ip -6 a del 2001:470:1f0b:d36:b180::1/76 dev wlp0s29f7u2; /usr/bin/ip l set wlp0s29f7u2 down' --- Не работает :) Если исполнять команды вручную в консоли, то всё ОК. А с помощью systemd - в логе сообщение ядра "IPv6: ADDRCONF(NETDEV_UP): wlp0s29f7u2: link is not ready". Как при попытке запуска, так и при попытке останова. Отчего такое может быть ? Можно ли как-то поглядеть, какие команды исполнялись и в какое время для старта юнита и от имени какого пользователя ? Интересно бы узнать подробнее. |
impatt |
|
Темы:
29
Сообщения:
100
Участник с: 04 июня 2007
|
impattЗаработало, добавил RemainAfterExit=yes, хотя что-то в мою башку пока не поместилось понимание этого параметра :) |