Можно ли дать нам некоторое представление о различии между "очень очень медленно" и "очень быстро"? Могло случиться так, что inetd делает что-то как выполнение обратного поиска IP-адресов на каждом соединении (я не знаю наверняка, это - просто предположение), и возможно Вам не настраивали сервер DNS для ответа, таким образом, это получает 1 или 2-минутный тайм-аут на каждом соединении.
Если различие будет "10 в секунду" по сравнению с "12 в секунду", то у Вас будут другие вопросы, чем если различие будет, "занимает 90 секунд для ответа" по сравнению с, "отвечает сразу же".
'Собственный' путь состоит в том, чтобы иметь сервер CUPS (им не нужны принтеры, просто программное обеспечение CUPS) на каждой подсети, и настройте те серверы для действия как Сервер ретрансляции Обзора. Конфигурация была бы
BrowsePoll a.b.c.7
BrowseRelay CUPS
Тот выполняющий CUPS сервер затем ответит на локальные для подсети запросы обзора с удаленным сервером.
Существует также способ сделать это через многоадресную передачу и Протокол обнаружения сервисов, но это не документируется хорошо вообще.
Насколько я знаю, что нет никакого способа автоматически сделать это доступным для других клиентов, которые не находятся на той же подсети. CUPS объявляет о себе с многоадресной передачей пакеты DNS. Можно все еще использовать принтер от другой подсети (если средства управления доступом являются правильными), но необходимо добавить его вручную относящийся к его IP-адресом.
чашки 1.6 б / у dnssd. Эта многоадресная передача на порт 5353 224.0.0.251. В качестве маршрутизатора не разрешено пересылать 224.0.0.251 пакеты застревают на границе шлюза.
Вы можете использовать функцию отражателя mDNS avahi-daemon на шлюзе.
NB: Если вы натолкнулись на шлюз, вам нужно будет установить NONAT для пакетов, входящих из родительская сеть. В файле shorewall / masq:
<external_interface> <parent_net_ip_range> NONAT
<external_interface> 224.0.0.0/4 NONAT
<external_interface>:!<parent_net_ip_range>,224.0.0.0/4 <subnet_ip_range> detect
avahi-daemon.conf на маршрутизаторе
[reflector]
enable-reflector=yes
avahi-daemon will reflect incoming mDNS requests to all local network interfaces, effectively allowing clients to browse mDNS/DNS-SD services on all networks connected to the gateway.
Make sure to not run multiple reflectors between the same networks, this might cause them to play Ping Pong with mDNS packets.
PS: Может потребоваться изменить пакеты, чтобы увеличить время жизни. Это тема, требующая дополнительных исследований, хотя вот настройки shorewall / start, raw iptables:
/sbin/iptables -t mangle -A PREROUTING -p all -s 224.0.0.0/4 -j TTL --ttl-inc <ttl_inc>
/sbin/iptables -t mangle -A PREROUTING -p all -d 224.0.0.0/4 -j TTL --ttl-inc <ttl_inc>
/sbin/iptables -t mangle -A PREROUTING -p all -s <parent_net_ip_range> -j TTL --ttl-inc <ttl_inc>
/sbin/iptables -t mangle -A PREROUTING -p all -d <parent_net_ip_range> -j TTL --ttl-inc <ttl_inc>
ttl_inc: любое число, начиная с единицы. Я использую двадцать локально, хотя это не высечено в камне. В основном зависит от количества маршрутизаторов, пересекаемых между принтером и клиентской станцией.
Здесь "принтеры" центра управления Gnome отправляют ttl f 255 (максимум), поэтому это не требуется.