Немного линукса
Пользовательские скрипты Linux
Хранение параметров соединений во временных файлах

Начиная с версии NSG Linux 2.1.3, некоторые параметры работы выводятся в определённые файлы, из которых их можно прочитать и использовать в различных скриптах. Речь идёт о параметрах, которые сохраняются либо постоянно, либо, как минимум, до переподключения порта. Это позволяет обойтись без разборки вывода команд типа или log. В текущей версии обрабатываются две группы таких параметров:

Директория /var/dhcp/ИНТЕРФЕЙС/ — параметры, полученные клиентом DHCP на данном интерфейсе (Ethernet или Ethernet-подобном), в том числе отвергнутые в силу существующих настроек порта. Содержит файлы:

broadcast Широковещательный адрес в назначенной сети
discarddns Полученный, но отвергнутый DNS (при установленной опции discard-dns=true)
discardrouter Полученный, но отвергнутый шлюз по умолчанию (при установленной опции discard-default-gw=true)
dns Назначенный и принятый DNS (при discard-dns=false)
ip Назначенный IP-адрес
metric Метрика маршрута по умолчанию (установленная опцией default-gw-metric)
netmask Назначенная маска сети
router Назначенный и принятый шлюз по умолчанию (при discard-default-gw=false)
table Таблица для записи маршрута по умолчанию (установленная опцией default-gw-table)

Директория /var/ppp/ИНТЕРФЕЙС/ — параметры, полученные по PPP на данном интерфейсе (PPP или производном от него). В данном случае, ИНТЕРФЕЙС — это системное имя вида pppN, назначаемое динамически. Содержит файлы:

device Имя используемого физического уровня (для туннелей PPPoE/PPTP/L2TP)
dns1, dns2 Полученные DNS
iplocal Полученный адрес для этого интерфейса
ipremote Полученный адрес для удалённой стороны PPP
linkname Имя физического асинхронного порта или туннеля в конфигурации устройства. В отличие от системного имени интерфейса, данное имя всегда постоянное. Соответствие между ними можно установить также командой nsgsh system.get-iface-name=ПОРТ в пакетном режиме.

Директория /var/sim/ПОРТ/ — параметры сотового порта. Содержит файлы:

ccid ICCID SIM-карты, используемой в текущем подключении
imei IMEI сотового модуля
imsi IMSI SIM-карты, используемой в текущем подключении
manuf Производитель сотового модуля
name Название сотового модуля
oper 5-значный код оператора (MCC+MNC), к которому установлено соединение

Все эти параметры могут использоваться в любых скриптах, например:

IMSI=$(cat /var/sim/m1/imsi);
OPER=$(cat /var/sim/m1/oper);
if [[ "$OPER" != "${IMSI:0:5}" ]]; then
  nsgsh -qr tools.led.l1.red.on;
else
  nsgsh -qr tools.led.l1.red.off;
fi

Приведённый скрипт будет зажигать красный сегмент индикатора L1, если SIM-карта работает в роуминге.


© Network Systems Group 2015–2024 Отдел документации