Как использовать zeroconf?

Если возможно, используйте rsync. Большая часть NAS предоставляет rsync услугу в наше время, это более безопасно, чем кто-то совместно использует, и это позволяет Вам регулировать bandwith точно. Кроме того, это только передаст различия между Вашими файлами, скорее та передача все каждый раз.

4
задан 2 March 2010 в 12:15
1 ответ

Обычно каждая машина, которая предлагает услугу, выполнит демона Zeroconf, и клиенты будут искать это в сети. На этом поле Debian, например, существует названный процесс avahi-daemon. Для рекламы сервиса программа говорит с демоном. Простой способ сделать, который является с программой avahi-publish, который регистрирует сервис в демоне:

avahi-publish -s myservice _http._tcp  12345 "Here it is"

Пока та программа не завершается, avahi-browse найдет его:

$ avahi-browse -t _http._tcp
= eth0 IPv4 myservice                       Web Site             local
   hostname = [mymachine.local]
   address = [192.168.1.123]
   port = [12345]
   txt = ["Here it is"]

Большую часть времени Вы не захотите запускать отдельную программу только для публикации сервиса, таким образом, у демона будет немного кода, чтобы сделать это. Вот некоторые хорошие примеры того, как сделать это в Python. Существует простая функция, которую Вы вызываете как это:

# Downloaded from http://stackp.online.fr/?p=35
# Thanks to Pierre
#
from ZeroconfService import ZeroconfService
import time

service = ZeroconfService(name="Joe's awesome FTP server",
                          port=3000,  stype="_ftp._tcp")
service.publish()

Снова, большую часть времени Вы не должны выполнять avahi-обзор, потому что Ваш браузер может, вероятно, найти эти вещи для себя. Safari может на Mac, например - ищут меню "Bonjour".

Можно также найти машины с помощью zeroconf. Моя машина является использованием addressible .local домен:

ssh mymachine.local

будет работать, даже если машина не будет в DNS. Очень полезный для домашней сети!

6
ответ дан 3 December 2019 в 03:13

Теги

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