@subsection Доступность почтового сервера время от времени
Представьте, что у вас есть собственный @url{http://www.postfix.org/,
-Postfix} SMTP сервер подключённый к Интернету. Но вы читаете и пишете
-поÑ\87Ñ\82овÑ\8bе Ñ\81ообÑ\89ениÑ\8f на Ñ\81воÑ\91м ноÑ\83Ñ\82бÑ\83ке, коÑ\82оÑ\80Ñ\8bй подклÑ\8eÑ\87аеÑ\82Ñ\81Ñ\8f к немÑ\83 лиÑ\88Ñ\8c
-вÑ\80емÑ\8f оÑ\82 вÑ\80емени. Ð\9aак опÑ\83Ñ\81Ñ\82оÑ\88иÑ\82Ñ\8c оÑ\87еÑ\80едÑ\8c из ожидаÑ\8eÑ\89иÑ\85 Ñ\81ообÑ\89ений когда
-ноутбук подключён?
+Postfix}/@url{http://www.exim.org/, Exim} SMTP сервер подключённый к
+Ð\98нÑ\82еÑ\80неÑ\82Ñ\83. Ð\9dо вÑ\8b Ñ\87иÑ\82аеÑ\82е и пиÑ\88еÑ\82е поÑ\87Ñ\82овÑ\8bе Ñ\81ообÑ\89ениÑ\8f на Ñ\81воÑ\91м ноÑ\83Ñ\82бÑ\83ке,
+коÑ\82оÑ\80Ñ\8bй подклÑ\8eÑ\87аеÑ\82Ñ\81Ñ\8f к немÑ\83 лиÑ\88Ñ\8c вÑ\80емÑ\8f оÑ\82 вÑ\80емени. Ð\9aак опÑ\83Ñ\81Ñ\82оÑ\88иÑ\82Ñ\8c
+оÑ\87еÑ\80едÑ\8c из ожидаÑ\8eÑ\89иÑ\85 Ñ\81ообÑ\89ений когда ноÑ\83Ñ\82бÑ\83к подклÑ\8eÑ\87Ñ\91н?
Одна из возможностей это войти на сервер и сделать что-то типа
@command{postqueue -f}, но по умолчанию у вас есть только несколько дней
@url{https://ru.wikipedia.org/wiki/KISS_(%D0%BF%D1%80%D0%B8%D0%BD%D1%86%D0%B8%D0%BF),
KISS}!
-Просто скажите вашим обоим Postfix-ам (на сервере и ноутбуке) отправлять
-сообщения через NNCP (@ref{nncp-exec}) на заданный узел. Это делается
-аналогично тому как с UUCP, и описано в
-@url{http://www.postfix.org/UUCP_README.html, документации Postfix}.
-
-Читайте @ref{Postfix, здесь} для более подробной информации. Вся почта
-будет сохранятся в NNCP @ref{Spool, спуле}, который после обмена данных
-и распаковки вызовет локальный @command{sendmail} для доставки почты,
-как-будто это произошло на этой же машине.
+Просто скажите вашим обоим Postfix/Exim-ам (на сервере и ноутбуке)
+отправлять сообщения через NNCP (@ref{nncp-exec}) на заданный узел.
+Более подробно читайте для Postfix @ref{Postfix, здесь}, а для Exim
+@ref{Exim, здесь}. Вся почта будет сохранятся в NNCP @ref{Spool, спуле},
+который после обмена данных и распаковки вызовет локальный
+@command{sendmail} для доставки почты, как-будто это произошло на этой
+же машине.
@node UsecasePOPRU
@subsection Легковесная и быстрая замена POP3/IMAP4
Команды:
-@verbatim
+@example
$ nncp-file file_i_want_to_send bob:
$ nncp-file another_file bob:movie.avi
-@end verbatim
+@end example
добавят в очередь отправки два файла для узла @emph{bob}.
Выстрелил-и-забыл! Теперь это работа демона (или offline передачи)
раньше или позднее остальных. Почти все команды имеют соответствующую
опцию:
-@verbatim
+@example
$ nncp-file -nice FLASH myfile node:dst
$ nncp-xfer -nice PRIORITY /mnt/shared
$ nncp-call -nice NORMAL bob
[...]
-@end verbatim
+@end example
Огромные файлы могут быть разбиты на маленькие @ref{Chunked, части},
давая возможность передачи, по сути, любых объёмов используя накопители
Вы также можете использовать CD-ROM и ленточные накопители:
-@verbatim
+@example
$ nncp-bundle -tx bob | cdrecord -tao -
$ nncp-bundle -tx bob | dd of=/dev/sa0 bs=10240
-@end verbatim
+@end example
@node UsecaseNoLinkRU
@subsection Экстремальные наземные окружающие условия, нет связи
устройство (SD гораздо предпочтительнее!) хранения, подмонтируйте и
запустите @ref{nncp-xfer}:
-@verbatim
+@example
$ nncp-xfer -node bob /media/usbstick
-@end verbatim
+@end example
чтобы скопировать все исходящие пакеты относящиеся к @emph{bob}.
Используйте @option{-mkdir} опцию чтобы создать все необходимые
@emph{bob} и к @emph{alice}, то тогда просто не указывайте
@option{-node} опцию, чтобы скопировать все доступные исходящие пакеты.
-@verbatim
+@example
$ nncp-xfer /media/usbstick
-@end verbatim
+@end example
Размонтируйте и передайте накопитель Бобу и Алисе. Когда они вставят
накопитель в свои компьютеры, то выполнят точно такую же команду:
-@verbatim
+@example
$ nncp-xfer /media/usbstick
-@end verbatim
+@end example
чтобы найти все пакеты относящиеся к их узлу и локально скопируют для
дальнейшей обработки. @command{nncp-xfer} это единственная команда
отсылать их. Они -- всего-лишь последовательность @ref{Encrypted,
зашифрованных пакетов}, которые вы можете принять.
-@verbatim
+@example
$ nncp-bundle -tx alice bob eve ... | команда для отправки широковещательной рассылки
$ команда для приёма широковещательной рассылки | nncp-bundle -rx
-@end verbatim
+@end example
Встроенная возможность определять дубляжи пакетов позволит вам
переотправлять широковещательные рассылки время от времени, повышая
отослать полезную нагрузку сразу же в самом первом пакете) безопасный
транспорт с свойством совершенной прямой секретности.
-@verbatim
-$ nncp-daemon -bind [::]:5400
-@end verbatim
+@example
+$ nncp-daemon -bind "[::]":5400
+@end example
+
запустит TCP демон, который будет слушать входящие соединения на всех
интерфейсах.
-@verbatim
+@example
$ nncp-call bob
-@end verbatim
+@end example
+
попытается подключиться к известному TCP-адресу узла @emph{bob} (взятого
из конфигурационного файла), послать все связанные с ним исходящие
пакеты и получить от него. Все прерванные передачи будут автоматически
NNCP из коробки поддерживает ретрансляцию пакетов.
@verbatim
-neigh:
- bob:
+neigh: {
+ bob: {
[...]
- addrs:
- lan: [fe80::5400%igb0]:5400
+ addrs: {
+ lan: "[fe80::5400%igb0]:5400"
+ }
+ }
bob-airgap:
[...]
- via: [bob]
+ via: ["bob"]
+ }
+}
@end verbatim
Такой @ref{Configuration, конфигурационный файл} говорит что у нас есть
звонков} для @ref{nncp-caller} команды, используемой при online связи.
@verbatim
-neigh:
+neigh: {
[...]
- some-node:
+ some-node: {
[...]
- addrs:
+ addrs: {
lan: "[fe80::be5f:f4ff:fedd:2752%igb0]:5400"
wan: "some-node.com:5400"
- calls:
- -
+ }
+ calls: [
+ {
cron: "*/1 * * * *"
addr: lan
nice: MAX
onlinedeadline: 3600
- -
+ },
+ {
cron: "*/10 * * * *"
addr: wan
nice: PRIORITY
xx: rx
- -
+ },
+ {
cron: "*/1 0-7 * * *"
addr: wan
nice: BULK
onlinedeadline: 3600
maxonlinetime: 3600
+ },
+ ]
+ }
+}
@end verbatim