Приветствую вас.

Пытаюсь самостоятельно разобраться в настройке ng_nat, но что-то не получается - запутался. Интересует принцип установки режимов работы ng_nat через ngctl msg nat: setmode { flags= mask= }.

Я нашел ваш скрипт ( http://antigreen.org/vadim/freebsd/ng_nat/ng_nat.sh ).
Там есть такая функция ng_nat_set_mode(), а в ней проверка на необходимость установки какого-либо режима с последующей конфигурацией через setmode.

Если можно вопрос: как правильно устанавливать параметр setmode mask= ? У вас при начальном конфигурировании экземпляра ng_nat он установлен в mask=0. Я прочитал в мане про libalias, что оно ожидает от нас флаги и маску которая указывает какие конкретно биты надо менять (?). Я вот не программист и мне как-то сложновато сходу понять в чем соль :)

Скажем если я устанавливаю конфигурацию вида:
log=1
deny_incoming=2
same_ports=4
unregistered_only=16
reset_on_addr_change=32

это значит 32+16+4+2+1=55 (00000000 00000000 00000000 00110111)
ngctl msg nat: setmode { flags=55 mask=0 }

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

Может достаточно просто указать новое значение при нулевой маске чтобы ng_nat заместил все старые биты им:
ngctl msg nat: setmode { flags=54 mask=0 }

Или надо все же указать еще и маску 4294967294 (11111111 11111111 11111111 11111110)
ngctl msg nat: setmode { flags=54 mask=4294967294 }


Заранее спасибо.
This account has disabled anonymous posting.
If you don't have an account you can create one now.
No Subject Icon Selected
More info about formatting

February 2017

S M T W T F S
   1 234
567891011
12131415161718
19202122232425
262728    

Style Credit

Expand Cut Tags

No cut tags
Page generated Aug. 4th, 2025 11:37 pm
Powered by Dreamwidth Studios