Zeroconf with Zyxel P-660HN-F1Z

From braindump
Revision as of 00:56, 5 January 2013 by Uroesch (talk | contribs) (→‎Telnet)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search


There is an option to purchase a discounted and officially sanctioned Zyxel P-660HN-F1Z when signing up for an ADSL account with Sunrise. Recently I started to play around with Bonjour on MacOS X and Avahi on Linux to better understand the whole mechanism.

However I did not get very far with the whole thing as the machines were not able to see each other's multicast traffic when talking to each other. Sniffing the network showed that the mDNS requests were sent on 224.0.0.251 port 5353 but no response was received. I thought there was a configuration issue with Avahi on my debian host but it turned out to be a much more sinister problem. Once I had to link the MacOS X host with the debian box directly over a cross-cable and to my surprise mDNS requests started to work magically. Digging deeper I found the culprit, the Zyxel P-660HN-F1Z router. Well hidden in one of the Advanced configuration menus is an option to switch on multicast (IGMP). Below is a visual guide how to make Zeroconf work either over the Web Interface or Telnet.

Configuration

Web Interface

Point your favorite webbrower to the IP address of the Router and supply the administrator's password on the login prompt. When landing on the Status page expand the Network and then click on LAN. 01-Zeroconf-Zyxel-Status.png

Swiftly continue to by pressing the [Advanced Setup] button. 02-Zerconf-Zyxel-LAN.png

Under the Multicast drop-down menu choose an IGMP protocol. Personally I have not tested anything other than the IGMP-v3. Once done press the [Apply] button. 03-Zeroconf-Zyxel-LAN-Advanced.png

Telnet

By default telnet is enabled on the router meaning the configuration can be done on the command line as well. Here is how.

Telnet to the router:

$ telnet 192.168.x.x
Trying 192.168.x.x...
Connected to 192.168.x.x.
Escape character is '^]'.

Password: ********
Copyright (c) 1994 - 2011 ZyXEL Communications Corp.
ras> 

Firstly display the current configuraton:

ras> lan display 
Active: Yes
Interface: enif0
IP Address: 192.168.x.x.
Subnet Mask: 255.255.255.0
RIP Direction: None
RIP Version: RIP-1
Multicast: None
Protocol Filter Set:
Incoming:   0  0  0  0
Outgoing:   0  0  0  0
Device Filter Set:
Incoming:   0  0  0  0
Outgoing:   0  0  0  0

Then we have to set the interface to be affected by the change:

ras> lan index 1 
enif0 is selected

Set the interface to igmpv3:

ras> lan multicast igmpv3

Confirm settings once more:

ras> lan display 
Active: Yes
Interface: enif0
IP Address: 192.168.x.x.
Subnet Mask: 255.255.255.0
RIP Direction: None
RIP Version: RIP-1
Multicast: IGMP-v3
Protocol Filter Set:
Incoming:   0  0  0  0
Outgoing:   0  0  0  0
Device Filter Set:
Incoming:   0  0  0  0
Outgoing:   0  0  0  0

Confirmation

Under Linux use the avahi-browse command which should show entries of all the Zeroconf enabled hosts on the local network. The -l option in the command below will exclude the host the command is issued on.

$ avahi-browse --all -l -t
+  wlan0 IPv4 host-b [00:xx:xx:xx:xx:a4]                    Workstation            local
+  wlan0 IPv4 host-b                                        Remote Disk Management local
+  wlan0 IPv4 saned                                         _sane-port._tcp        local
+  wlan0 IPv4 host-a                                        SSH Remote Terminal    local
+  wlan0 IPv4 host-a                                        SFTP File Transfer     local
+  wlan0 IPv4 host-a                                        VNC Remote Access      local
+  wlan0 IPv4 SSH on host-b                                 SSH Remote Terminal    local
+  wlan0 IPv4 host-b                                        Apple TimeMachine      local
+  wlan0 IPv4 host-b                                        _device-info._tcp      local
+  wlan0 IPv4 AirPrint PDF @ host-b                         Internet Printer       local
+  wlan0 IPv4 AirPrint Samsung_ML-1410 @ host-b             Internet Printer       local
+  wlan0 IPv4 My Music on host-b                            iTunes Audio Access    local
+  wlan0 IPv4 host-b                                        Apple File Sharing     local
+  wlan0 IPv4 My Music on host-b                            _rsp._tcp              local
+  wlan0 IPv4 My Music on host-b                            Web Site               local