MavEtJu's Distorted View of the World - DHCP

DHCPDUMP 1.8 released
APC Metered Rack Power Distribution Unit and ISC-DHCPD
Stupid network printers...
Grandstream ATA486 DHCP behaviour
Alcatel Premium VoIP phone and the ISC dhcpd 3.0.3
Cisco 7970
DHCPDUMP 1.6 released
Alcatel Voice over IP phones and ISC DHCP

Back to index

DHCPDUMP 1.8 released

Posted on 2008-06-24 13:00:00
Tags: DHCP, DHCPDUMP

When I wrote DHCPDUMP first, I was lucky because the output of tcpdump, which is used an input for DHCPDUMP, was very consistent. Over the years this has changes a little bit. A lot little bits.

Therefor I present to you: DHCPDUMP version 1.8, now using libpcap as input instead of the output of tcpdump.

You can find it at http://www.mavetju.org/download/dhcpdump-1.8.tar.gz.


No comments | Share on Facebook | Share on Twitter

APC Metered Rack Power Distribution Unit and ISC-DHCPD

Posted on 2007-03-17 17:15:07, modified on 2007-03-17 18:34:03
Tags: Networking, DHCP

This APC power rails is a managed powerboard, which you can access via (ssh|telnet|http|etc).

By default it takes its address via BOOTP, but it can be done via DHCP too. But then, only when it finds a proper cookie in the DHCP answer. After some trying out, this is what you have to configure in the ISC-DHCP server to get it all working:

option space APC;
option APC.cookie code 1 = string;
class "apc-rpdu" {
        match if substring (option vendor-class-identifier,0,3) = "APC";
        vendor-option-space APC;
        option APC.cookie "1APC";
}

Show comment | Share on Facebook | Share on Twitter

Stupid network printers...

Posted on 2006-11-22 11:30:53, modified on 2006-11-22 11:37:54
Tags: Printers, DHCP

Just when you think that you can quietly do some overdue network redesign, everybody suddenly wants network printers / scanners hooked up. And of course, these things are dumb++


No comments | Share on Facebook | Share on Twitter

Grandstream ATA486 DHCP behaviour

Posted on 2005-09-13 14:08:27, modified on 2006-01-09 16:29:23
Tags: Happiness, Networking, Voice over IP, DHCP

This is what I got when my Grandstream ATA486 was rebooting and TFTPing a new software version:
64 bytes from 10.192.14.243: icmp_seq=25 ttl=127 time=0.532 ms
64 bytes from 10.192.14.243: icmp_seq=26 ttl=127 time=0.546 ms
64 bytes from 10.192.14.243: icmp_seq=27 ttl=127 time=0.564 ms
64 bytes from 10.192.14.243: icmp_seq=28 ttl=127 time=0.564 ms
64 bytes from 10.192.14.243: icmp_seq=29 ttl=127 time=0.570 ms
64 bytes from 0.0.0.0: icmp_seq=34 ttl=249 time=0.420 ms
64 bytes from 0.0.0.0: icmp_seq=35 ttl=249 time=1.807 ms
64 bytes from 0.0.0.0: icmp_seq=36 ttl=249 time=1.283 ms
64 bytes from 0.0.0.0: icmp_seq=37 ttl=249 time=1.036 ms
64 bytes from 0.0.0.0: icmp_seq=38 ttl=249 time=2.385 ms
64 bytes from 10.192.14.243: icmp_seq=39 ttl=249 time=0.764 ms
64 bytes from 10.192.14.243: icmp_seq=40 ttl=249 time=2.500 ms
64 bytes from 10.192.14.243: icmp_seq=41 ttl=249 time=0.507 ms
64 bytes from 10.192.14.243: icmp_seq=42 ttl=249 time=2.383 ms
64 bytes from 10.192.14.243: icmp_seq=43 ttl=249 time=0.612 ms
64 bytes from 10.192.14.243: icmp_seq=44 ttl=249 time=2.373 ms

No comments | Share on Facebook | Share on Twitter

Alcatel Premium VoIP phone and the ISC dhcpd 3.0.3

Posted on 2005-08-19 10:59:03, modified on 2006-01-09 16:29:23
Tags: Voice over IP, DHCP, Alcatel

My Alcatel Premium e-reflexes voice-over-IP phone (best VoIP phone I've encountered, besides the fact that it is a non-SIP non-open protocol device) suddenly stopped worked after an upgrade from the ISC dhcpd 3.0.1r14 (yes yes) to version 3.0.3. The error was (very descriptive): Error 2.02

The cause was this change in the ISC DHCP server:

The siaddr field was being improperly set to the server-identifier when responding to DHCP messages. RFC2131 clarified the siaddr field as meaning the 'next server in the bootstrap process', eg a tftp server. The siaddr field is now left zeroed unless next-server is configured.

And according to the output of dhcpdump(1), that was indeed the case:

  TIME: 10:30:13.000930               |   TIME: 10:32:31.001894
    IP: 192.168.1.1.67 (00:50:8b:b9:2       IP: 192.168.1.1.67 (00:50:8b:b9:2
    OP: 2 (BOOTPREPLY)                      OP: 2 (BOOTPREPLY)
 HTYPE: 1 (Ethernet)                     HTYPE: 1 (Ethernet)
  HLEN: 6                                 HLEN: 6
  HOPS: 0                                 HOPS: 0
   XID: 7db4fce1                           XID: 7db4fce1
  SECS: 0                                 SECS: 0
 FLAGS: 0                                FLAGS: 0
CIADDR: 0.0.0.0                         CIADDR: 0.0.0.0
YIADDR: 192.168.2.249                   YIADDR: 192.168.2.249
SIADDR: 192.168.1.1                   | SIADDR: 0.0.0.0
GIADDR: 0.0.0.0                         GIADDR: 0.0.0.0
CHADDR: 00:80:9f:54:50:a3:00:00:00:00   CHADDR: 00:80:9f:54:50:a3:00:00:00:00
 SNAME: .                                SNAME: .
 FNAME: .                                FNAME: .
OPTION:  53 (  1) DHCP message type     OPTION:  53 (  1) DHCP message type  
OPTION:  54 (  4) Server identifier     OPTION:  54 (  4) Server identifier  
OPTION:  51 (  4) IP address leasetim   OPTION:  51 (  4) IP address leasetim
OPTION:   1 (  4) Subnet mask           OPTION:   1 (  4) Subnet mask        
OPTION:   3 (  4) Routers               OPTION:   3 (  4) Routers            
OPTION:  43 ( 15) Vendor specific inf   OPTION:  43 ( 15) Vendor specific inf
OPTION:  58 (  4) T1                    OPTION:  58 (  4) T1                 
OPTION:  59 (  4) T2                    OPTION:  59 (  4) T2                 
OPTION:  66 ( 13) TFTP server name      OPTION:  66 ( 13) TFTP server name   
OPTION:  67 (  9) Bootfile name         OPTION:  67 (  9) Bootfile name      

My dhcpd entry for these phones now looks like:

class "ipphone" {
        match if option vendor-class-identifier = "alcatel.tsc-ip.0";
        option dhcp-parameter-request-list 1,3,28,43,54,58,59,60,66,67;
        option vendor-encapsulated-options "alcatel.a4400.0";
        option tftp-server-name "10.192.13.10";
        next-server 10.192.13.10;
        option bootfile-name "ST_JAMES";
}

and every phone here is happy again!


No comments | Share on Facebook | Share on Twitter

Cisco 7970

Posted on 2005-02-21 13:02:07, modified on 2006-01-09 16:29:23
Tags: Voice over IP, Cisco, tftp, DHCP

For a new project within BarNet, we're going to use the Cisco solution for Voice-over-IP. The central server will be the Cisco Call Manager (and friends), the phones will be Cisco 7970 phones.

DHCP-wise these devices aren't too demanding, it asks for the TFTP server and something like option 150 (which is unspecified as far as I can tell). The TFTP server option is a string with the hostname or IP address of the TFTP server. The option 150 is, after going through the documentation of the Cisco gear, *also* for specifying the TFTP server, but then only with the IP address.

So the DHCP configuration should be (for people using the ISC DHCP server):

option cisco-tftp code 150 = array of ip-address;
class "cisco7970" {
   match if substring (option vendor-class-identifier,0,37) = "Cisco Systems, Inc. IP Phone CP-7970G";
   option arp-cache-timeout 60;
   option cisco-tftp 192.168.1.1,192.168.1.2;
   option tftp-server-name "cisco-cm.mavetju.org";
}

Update

There is a draft for the option 150 available at: http://www.ietf.org/internet-drafts/draft-raj-dhc-tftp-addr-option-00.txt


No comments | Share on Facebook | Share on Twitter

DHCPDUMP 1.6 released

Posted on 2003-11-21 23:47:26, modified on 2006-01-09 16:29:20
Tags: Coding, Networking, DHCP, DHCPDUMP

DHCPDUMP version 1.6 is released.

Fixed are:
- display of pad options
Added are:
- display of option 83 (and others)
- flushing of stdout after printing one packet.

Available via http://www.mavetju.org/unix/general.php.


No comments | Share on Facebook | Share on Twitter

Alcatel Voice over IP phones and ISC DHCP

Posted on 2003-11-20 18:58:47, modified on 2006-01-09 16:29:21
Tags: Voice over IP, DHCP, Alcatel

How to configure the ISC DHCP server to serve the Alcatel Voice over IP phones.

At BarNet, we are testing Voice over IP phones from Alcatel. C., The company which helps us with it isn't really up to date with their IP network skills. With the result that I had to spent the last days with trying to find out how to configure the ISC DHCP server properly for these phones. Fortunatly that I got some Alcatel OmniPCX 4400 manuals via a friend which described exactly what I needed to configure.

Please take note that...

So here is the config for the ISC DHCP:

class "ipphone" {
  match if option vendor-class-identifier = "alcatel.tsc-ip.0";
  option dhcp-parameter-request-list 1,3,28,43,54,58,59,60,66,67;
  option vendor-encapsulated-options "alcatel.a4400.0";
  option tftp-server-name "10.192.13.10";
  option bootfile-name "ST_JAMES";
}

That's a little bit shorter than the two pages of "click here, tick this button" for the Windows DHCP servers, isn't it?


Show comment | Share on Facebook | Share on Twitter