精华内容
下载资源
问答
  • DNS到Avahi网关 该项目提供了通过发布和解析多播DNS中普通DNS区域的工具。 程序从DNS服务器下载整个DNS区域,并通过本地Avahi守护程序实例将其所有资源记录发布到多播DNS。 程序为 DNS解析器实现扩展模块,该模块可...
  • avahi-daemon

    2020-12-26 15:25:40
    s IP address without connecting a monitor to it, just using avahi-discover. For that, you only need to install the package "avahi-daemon" to the distribution and then any device on the network...
  • ubuntu avahi用法

    2021-04-23 10:21:47
    ubuntu avahi用法 在 ubuntu 16.04 中已经自带 avahi 服务了 如果没有 请使用 下面命令 安装 sudo apt-get install avahi-daemon sudo apt-get install avahi-utils http://avahi.org/ ...

    ubuntu avahi用法

    在 ubuntu 16.04 中已经自带 avahi 服务了

    如果没有 请使用 下面命令 安装
    sudo apt-get install avahi-daemon
    sudo apt-get install avahi-utils

    http://avahi.org/
    http://en.wikipedia.org/wiki/Avahi_%28software%29

    service avahi-daemon stop

    可以查看局域网内所有的mdns服务,

    avahi-browse -a

    使用 avahi-browse 命令行程序 /usr/bin/avahi-browse
    使用 avahi-browse 命令行程序执行以下操作:
    在网络上浏览以查找所有 mDNS 广播
    对执行广播的设备的主机名和 IP 地址进行解析

    11

    我的机器没有无线设备,只作为文件服务器、下载服务器使用,所以应该关闭avahi-daemon
    停止服务
    systemctl stop avahi-daemon.socket
    systemctl stop avahi-daemon.service
    停止自动启动
    systemctl disable avahi-daemon.socket
    systemctl disable avahi-daemon.service

    将avahi移植到arm-linux

    1.两个tar包

    libdaemon-0.14.tar.gz

    avahi-0.6.31.tar.gz

    2.先编译libdaemon

    tar zxvf libdaemon-0.14.tar.gz
    cd libdaemon-0.14/

    ./configure --host=arm-avl-linux-gnueabi --prefix=/home/xxx/airplay/avahi/daemon_arm_prefix

    make

    make install

    3.编译avahi

    tar zxvf avahi-0.6.31.tar.gz

    cd avahi-0.6.31/

    ./configure --host=arm-avl-linux-gnueabi --prefix=/home/xxx/airplay/avahi/avahi_arm_prefix --with-distro=none --localstatedir=/ var --disable-gdbm LIBDAEMON_CFLAGS="-I/home/xxx/airplay/avahi/daemon_arm_prefix/include" LIBDAEMON_LIBS="-L/home/xxx/airplay/avahi/daemon_arm_prefix/ lib -ldaemon -L/home/project/mpxx/gst/lib" --disable-qt3 --disable-qt4 --disable-gtk --disable-gtk3 --disable-python --disable-mono GOBJECT_LIBS="-L/home/ project/mpxx/gst/gst_1.0.5/lib -lgobject-2.0" GLIB20_CFLAGS="-I/home/project/mpxx/gst/include/glib-2.0" GLIB20_LIBS="-L/home/project/mpxx/gst/lib -lglib-2. 0"

    然后修改avahi-daemon/Makefile

    将sysconfdir = $(prefix)/etc

    改为sysconfdir = /etc

    再执行make命令

    make之后再修改avahi-daemon/Makefile

    将sysconfdir = /etc

    改为sysconfdir = $(prefix)/etc

    然后make install

    (这样做是为了避免编译程序时将编译时的路径带进去,在板子上运行时会出现错误的路径)

    11

    Avahi 是Zeroconf规范的开源实现,常见使用在Linux上。它可以在没有 DNS 服务的局域网里发现基于 zeroconf 协议的设备和服务。

    它跟 mDNS 一样。包含了一整套多播DNS(multicastDNS)/DNS-SD网络服务的实现。

    它使用的发布授权是LGPL。Zeroconf规范的另一个实现是Apple公司的Bonjour程式。Avahi和Bonjour相互兼容。

    Avahi允许程序在不需要进行手动网络配置的情况下,在一个本地网络中发布和获知各种服务和主机。例如,当某用户把他的计算机接入到某个局域网时,如果他的机器运行有Avahi服务,则Avahi程式自动广播,从而发现网络中可用的打印机、共享文件和可相互聊天的其他用户。这有点象他正在接收局域网中的各种网络广告一样。Linux下系统实际启动的进程名,是avahi-daemon

    11

    ## 发现所有已注册的服务
    avahi-browse -a -r
    
    ## 发现某个类型的服务的返回包
    avahi-browse -r "xxx"
    
    -xxx是指服务类型,如_http._tcp
    
    

    mDNS

    http://www.ietf.org/rfc/rfc6762.txt
    Multicast DNS and DNS Service Discovery are technologies that allow you
    to register IP-based services and browse the network for those services.
    For more information about mDNS, see the mDNS web site.

    http://www.multicastdns.org/

    mDNSPosix

    ReadMe About mDNSPosix

    mDNSPosix is a port of Apple’s Multicast DNS and DNS Service Discovery
    code to Posix platforms.

    Multicast DNS and DNS Service Discovery are technologies that allow you
    to register IP-based services and browse the network for those services.
    For more information about mDNS, see the mDNS web site.

    http://www.multicastdns.org/

    Multicast DNS is part of a family of technologies resulting from the
    efforts of the IETF Zeroconf working group. For information about
    other Zeroconf technologies, see the Zeroconf web site.

    http://www.zeroconf.org/

    Apple uses the trade mark “Bonjour” to describe our implementation of
    Zeroconf technologies. This sample is designed to show how easy it is
    to make a device “Bonjour compatible”.

    The “Bonjour” trade mark can also be licensed at no charge for
    inclusion on your own products, packaging, manuals, promotional
    materials, or web site. For details and licensing terms, see

    http://developer.apple.com/bonjour/

    The code in this sample was compiled and tested on Mac OS X (10.1.x,
    10.2, 10.3), Solaris (SunOS 5.8), Linux (Redhat 2.4.9-21, Fedora Core 1),
    and OpenBSD (2.9). YMMV.

    [从0到1搭嵌入式工程]局域网自动发现功能,苹果Bonjour/mdnsResponder移植

    在局域网内通信,就必须知道对方的IP地址和端口,苹果开源的mdnsResponder,就是利用mdns组播协议,通过服务域名,来获取相应ip地址的一种方式。

    比如我们有一个摄像头,在联网的情况下,同一个局域网下的app想发现这个摄像机,并和摄像机建立联系。

    这样一个需求,需要摄像头调用mDNS_Register,通过传参告知mdns库,在指定的port上注册一个did._ipcxx._tcp.local的服务, 然后自己开一个socket,绑定port口,等待来自APP的数据。

    APP要去找摄像机,所以调用DNSServiceBrowse,传入服务类型_ipcxx._tcp和域local, 在局域网内就能找到一条 did._ipcxx._tcp.local的服务, 再调用DNSServiceResolve,就可以得到ipc的主机名和端口号, 通过主机名,调用gethostbyname,就可以获取到摄像机的ip地址。 服务的名字使用摄像机的did,方便app应对多个摄像机,同时方便验证合法性。

    有了ip和port,就可以创建一个socket,去连接到摄像头,就开始发送数据了。

    至此,一个局域网自动发现功能就完成了,我们不需要了解mdns组播协议,仅仅调用苹果的api,就获取到了想要的摄像机的ip。

    下面介绍苹果开源源码的移植和它的demo代码。

    源码地址在:https://opensource.apple.com/tarballs/mDNSResponder/, 版本为:mDNSResponder-878.30.4.tar.gz

    解压后目录结构:

    在这里插入图片描述
    这里面有针对不同系统的文件夹,我们不需要关心,用得上的是mDNSPosix/mDNSCore/mDNSShared三个目录。

    建议读本目录和mDNSPosix下的README.TXT,里面说的很细致。

    我们是Linux系统,所以进到mDNSPosix目录, 里面的各个文件我们暂时也不需要关心,这是好几个应用程序的源代码。

    执行 make os=linux, 先在我们的x86linux上编译一遍, 如果你想在linux上直接调试,可以执行sudo make install os=linux, 他会安装并执行一个mdnsd的应用程序,是mDNS的常驻进程,常用调试应用dns-sd,就需要依赖这个程序才能实现mdns服务发现,参见readme文件。

    在…/Clients/build目录下,执行./dns-sd就能看到命令选项, 可以注册一个service,可以再开一个shell,同样执行./dns-sd 去发现刚才注册的服务。调试很好用。

    但是最终要把mdns移植到我们的嵌入式linux上,所以我们不能用mdnsd, 也不用dns-sd。

    在/mDNSPosix/Makefile中, 需要我们直接修改工具链和编译参数,在build下编译出可以在嵌入式设备上运行的程序。
    在这里插入图片描述
    图不好修改了,在图中LD后面添加STRIP = arm-linux-strip, 否则编译不过。

    刚才的make中os参数是必须的,我们指定linux,就会到这里来,在这里我们可以定义我们自己的arm gcc,可以加我们自己的编译选项CFLAGS, 同时去掉CFLAGS_OS中的-DHAVE_IPV6 -DTARGET_OS_LINUX。

    rm -rf objects, 删除前一次的编译文件。同样 make os=linux,直到编译成功。在build/prod目录下,就是我们生成的可执行文件,嵌入式设备上,执行mDNSClientPosix, 就可以看到同一个局域网下,你刚才在linux上用dns-sd注册的服务, 执行mDNSResponderPosix,就可以注册一个服务。查看代码client.c 和 responder.c,你会了解服务注册和搜索的过程。

    这个responder.c,就是我们嵌入式设备所需要的base代码,你自己的应用逻辑,都可以在这里实现。

    怎么把它移植到我们自己的代码库中?

    编译的时候,在编译mDNSResponderPosix时,会打印出它所依赖的.c文件,把这些.c文件单独摘出来,把.h文件也拿出来,单独见一个目录,就可以使用这些.c文件,执行自己的make,生成responder可执行文件了。

    至此,整个移植的过程就结束了。

    调试过程中,通过对client.c responder.c Clinents/dns-sd.c的学习,就会了解各个接口的应用,从而融会贯通。

    展开全文
  • Avahi DOS攻击broadcast-avahi-dos
    Avahi DOS攻击broadcast-avahi-dos

    Avahi是Linux下常用的类DNS服务。它可以帮助主机在没有DNS服务的局域网中,发现基于Zeroconf协议的设备和服务。该工具工作于UDP 5353端口。在0.6.29版本之前,该服务存在CVE-2011-1002漏洞。Nmap的broadcast-avahi-dos脚本会寻找本地网络的DNS服务器,并发送空的UDP包。如果存在该漏洞,就可以导致服务器奔溃。
    展开全文
  • avahi - AvahiAvahi和Bonjour相互兼容)

    千次阅读 2015-07-10 12:12:33
    avahi - Avahi Avahi 是Zeroconf规范的开源实现,常见使用在Linux上。它可以在没有 DNS 服务的局域网里发现基于 zeroconf 协议的设备和服务。 它跟 mDNS 一样。包含了一整套多播DNS(multicastDNS)/...

    avahi - Avahi

    Avahi 是Zeroconf规范的开源实现,常见使用在Linux上。它可以在没有 DNS 服务的局域网里发现基于 zeroconf 协议的设备和服务。

    它跟 mDNS 一样。包含了一整套多播DNS(multicastDNS)/DNS-SD网络服务的实现。

    它使用的发布授权是LGPL。Zeroconf规范的另一个实现是Apple公司的Bonjour程式。Avahi和Bonjour相互兼容。

    Avahi允许程序在不需要进行手动网络配置的情况下,在一个本地网络中发布和获知各种服务和主机。例如,当某用户把他的计算机接入到某个局域网时,如果他的机器运行有Avahi服务,则Avahi程式自动广播,从而发现网络中可用的打印机、共享文件和可相互聊天的其他用户。这有点象他正在接收局域网中的各种网络广告一样。Linux下系统实际启动的进程名,是avahi-daemon

    展开全文
  • support for avahi

    2020-11-22 12:05:51
    <div><p>mpd can be (and usually is) built with avahi. it would be great to have in cantata, what for to manually set connection if it can be done automagically?</p><p>该提问来源于开源项目:...
  • Avahi mDNS API

    2020-11-22 05:56:11
    <div><p>http://0pointer.de/avahi-compat?s=libdns_sd&e=node <p>I realize this is no priority, b/c people on in the LAN are not probably using Linux. Nonetheless, I was not able to browse ...
  • I install avahi on a raspberry pi to be able to detect it with mdns. The service is up: <pre><code> ● avahi-daemon.service - Avahi mDNS/DNS-SD Stack Loaded: loaded (/lib/systemd/system/avahi-daemon...
  • make avahi optional

    2020-12-28 16:28:15
    <p>as title says, avahi is now optional. defaults to enabled <p><strong>2.</strong> If this changes affect the .conf file. Please provide the changed section <p><strong>3.</strong> Reference a issue ...
  • <div><p>Right now we use Avahi for hostname resolution. This allows us to not worry about DNS misconfigurations and provides name resolution on all interfaces. However, since Avahi does not actually ...
  • avahi-0.7.zip

    2019-10-24 14:44:52
    avahi-0.7 源代码 avahi-daemon是一种Linux操作系统上运行在客户机上实施查找基于网络的Zeroconf service的服务守护进程。 该服务可以为Zeroconf网络实现DNS服务发现及DNS组播规范。 用户程序通过Linux D-Bus信息...
  • avahi-daemonAvahi is an mDNS/DNS daemon, service which implements Apples’s Zeroconf mechanism. Zeroconf is also known as Rendezvous or Bonjour. Zeroconf have their main task to process. Avahi是mDNS /...
    avahi-daemon

    avahi-daemon

    Avahi is an mDNS/DNS daemon, service which implements Apples’s Zeroconf mechanism. Zeroconf is also known as Rendezvous or Bonjour. Zeroconf have their main task to process.

    Avahi是mDNS / DNS守护程序,该服务实现了Apple的Zeroconf机制。 Zeroconf也称为Rendezvous或Bonjour。 Zeroconf有其主要任务要处理。

    1. Automatic assignment of numeric network addresses

      自动分配数字网络地址
    2. Automatic distribution and resolution of hostnames,

      自动分配和解析主机名,
    3. Automatic location of network services such as printing devices.

      网络服务(例如打印设备)的自动位置。

    安装Avahi (Installing Avahi)

    Avahi-daemon can be installed with yum and apt like below.

    Avahi-daemon可以与yum和apt一起安装,如下所示。

    $ sudo apt install avahi-daemon
    
    Installing Avahi
    Installing Avahi
    安装Avahi

    启动阿瓦希 (Starting Avahi)

    After installing avahi as we know avahi works as daemon generally. We will start the avahi daemon. Using init scripts following command can be issued. Keep in mind that avahi requires root privileges as we can see from the following screenshot it asks for the root password.

    在我们知道安装avahi之后,avahi通常可以用作守护程序。 我们将启动avahi守护程序。 使用初始化脚本,可以发出以下命令。 请记住,avahi需要root特权,正如我们从下面的屏幕快照中看到的那样,它要求输入root密码。

    $ /etc/init.d/avahi-daemon start
    
    Starting Avahi
    Starting Avahi
    启动阿瓦希

    OR

    要么

    Another way to start avahi-daemon is by using systemctl command like below. with the avahi service name avahi-daemon. The avahi service current status can be seen too

    启动avahi-daemon的另一种方法是使用如下所示的systemctl命令。 使用avahi服务名称avahi-daemon。 avahi服务的当前状态也可以看到

    $ sudo systemctl start avahi-daemon
    
    Starting Avahi
    Starting Avahi
    启动阿瓦希

    停止阿瓦希(Stopping Avahi)

    Stopping avahi in the init system can be done with the following command. Stopping avahi service requires root privileges too.

    可以使用以下命令在初始化系统中停止avahi。 停止avahi服务也需要root特权。

    $ /etc/init.d/avahi-daemon stop
    
    Stopping Avahi
    Stopping Avahi
    停止阿瓦希

    OR

    要么

    $ sudo systemctl stop avahi-daemon
    

    启用Avahi守护程序 (Enable Avahi Daemon)

    Avahi daemon can be enabled to start automatically in the system start with the systemctl command like below.

    可以使用以下systemctl命令在系统启动时启用Avahi守护程序自动启动。

    $ sudo systemctl enable avahi-daemon
    
    Enable Avahi Daemon
    Enable Avahi Daemon
    启用Avahi守护程序

    禁用Avahi守护程序(Disable Avahi Daemon)

    Avahi daemon can be disabled to start automatically in the system start with the following command.

    可以禁用Avahi守护程序以在系统中使用以下命令自动启动。

    $ sudo systemctl disable avahi-daemon
    
    Disable Avahi Daemon
    Disable Avahi Daemon
    禁用Avahi守护程序

    配置文件(Configuration Files)

    Avahi configuration files reside in /etc/avahi . Avahi daemon configuration file is named avahi-daemon.conf . There is a different type of configuration abilities with this file. Avahi server hostnames and IP addresses are stored in hosts file. Services are stored in services directory as XML file.

    Avahi配置文件位于/etc/avahi 。 Avahi守护程序配置文件名为avahi-daemon.conf 。 此文件有不同类型的配置功能。 Avahi服务器的主机名和IP地址存储在hosts文件中。 服务以XML文件的形式存储在services目录中。

    LEARN MORE  Linux Su Command Tutorial With Examples
    通过示例了解更多Linux Su命令教程
    Configuration Files
    Configuration Files
    配置文件

    添加主机(Add Host)

    Adding host to the DNS service of avahi is like adding host Linux hosts file. Add the following line into the host file like in the screenshot and then restart avahi daemon.

    将主机添加到avahi的DNS服务就像添加主机Linux主机文件一样。 如屏幕截图所示,将以下行添加到host文件中,然后重新启动avahi守护程序。

    192.168.122.45  ubu2
    
    Add Host
    Add Host
    添加主机

    添加服务(Add Service)

    Adding services is harder than adding hosts. There is an XML configuration file used to describe services and this file will be put into /etc/avahi/services/ . The following service configuration file defines FTP file which is  served from tcp 21 port.

    添加服务比添加主机难。 有一个用于描述服务的XML配置文件,该文件将放入/etc/avahi/services/ 。 以下服务配置文件定义了从tcp 21端口提供的FTP文件。

    <?xml version="1.0" standalone='no'?>
    <!DOCTYPE service-group SYSTEM "avahi-service.dtd">
    <service-group>
      <name>FTP file sharing</name>
      <service>
        <type>_ftp._tcp</type>
        <port>21</port>
      </service>
    </service-group>
    
    Add Service
    Add Service
    添加服务

    翻译自: https://www.poftut.com/linux-avahi-daemon-tutorial-examples/

    avahi-daemon

    展开全文
  • <div><p>We special-case AVAHI_ERR_NO_DAEMON to not cause warnings, but if we pass AVAHI_CLIENT_NO_FAIL to avahi_client_new, we never actually see AVAHI_ERR_NO_DAEMON. Instead, we will get AVAHI_ERR_...
  • <p><code>/usr/lib/avahi/avahi-daemon-check-dns.sh: 81: /usr/lib/avahi/avahi-daemon-check-dns.sh: sort: not found</code></p> <p>The script is run by <code>/etc/network/if-up.d/avahi-daemon</code></p> ...
  • Install avahi-utils

    2020-12-27 06:57:47
    <div><p>avahi-daemon is not working properly. Install avahi-utils instead. <h3>How to use <p>This is for <strong>Per Project Installation</strong></p> <ol><li>Only set Homestead.yaml hostname <code>...
  • avahi and daemon

    2013-08-05 19:30:47
    包括编译前后的daemon-0.14,avahi-0.6.31因为是在本人机器上编译的,所以下载者需要重新编译。
  • avahi介绍

    千次阅读 2014-01-16 09:50:54
    Avahi 是Zeroconf规范的开源实现,常见使用在Linux上。它可以在没有 DNS 服务的局域网里发现基于 zeroconf 协议的设备和服务。 它跟 mDNS 一样。包含了一整套多播DNS(multicastDNS)/DNS-SD网络服务的实现...
  • avahi-daemon.service failed

    2021-01-09 13:34:18
    <div><p>Since updating to the latest version avahi-daemon no longer runs. <pre><code>bash homestead: Running: script: Configure Avahi Service homestead: Job for avahi-daemon.service failed because ...
  • <div><p>Policy server can be discovered over Zeroconf protocol using Avahi. <p>Avahi is discovered at runtime using dlopen. <p>Implemented new command line option for cf-serverd: -A. With this option ...
  • avahi-0.7.tar.gz

    2019-07-18 20:56:52
    avahi-0.7.tar.gz 源代码 avahi-daemon是一种Linux操作系统上运行在客户机上实施查找基于网络的Zeroconf service的服务守护进程。 该服务可以为Zeroconf网络实现DNS服务发现及DNS组播规范。 用户程序通过Linux D-Bus...
  • avahi-autoipd实验

    2020-04-29 14:08:28
    avahi-autoipd的link-local实验参考: https://developer.apple.com/library/archive/qa/qa1357/_index.html 前提: windows上安装Bonjour服务 和Bonjour软件 linux设备上有avahi的服务 windows 下面命令二选一: ...
  • <p>did you consider <em>optionally</em> integrating with Avahi by talking to it using DBUS? <a href="http://web.archive.org/web/20180805190515/https://gist.github.com/lemenkov/7515376">Example</a></p>...
  • SOLVED - avahi 64bit

    2020-12-25 17:34:04
    but the launch of avahi-daemon 0.6.25 I have error in the log <p>open ("/ services / AirPrint-myprinter.service", O_RDONLY): Permission denied Failed to load service group file / services / ...
  • Avahi daemon fails on dd-wrt

    2020-11-24 21:54:11
    <p>Upon start of avahi daemon (rc.unslung start), avahi-daemon fails. <p><code>Jun 12 10:04:26 DD-WRT user.notice root: Started dbus-daemon from. Jun 12 10:04:26 DD-WRT user.notice root: Started avahi...
  • [....] Starting Avahi mDNS/DNS-SD Daemon: avahi-daemon[....] avahi-daemon disabl[warncause there is a unicast .local domain ... (warning). But when I use "avahi-daemon -D", it works. So I am ...
  • 关闭avahi-daemon进程

    2020-04-25 13:18:31
    avahi-daemon The avahi-daemon Linux service runs on client machines to perform network-based Zeroconf service discovery. Avahi is an implementation of the DNS Service Discovery and Multicast DNS speci...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,266
精华内容 506
关键字:

Avahi