I’m trying to simplify my computer network for my upcoming move, and so far, it’s been going pretty well. I think we’ll be able to run with just the D-Link DIR-655 (192.168.1.1) feeding a network with my new ReadyNas NV+ (192.168.1.3) acting as a central file store, iTunes server and Time Machine backup device. And we’ll have a couple of MacBook Pros connecting either wired or wirelessly. In the meanwhile, we’ve got a few other devices on the net including a printer, the old audiotron, etc.

The NAS is currently doing dns on the “sandman” domain. The D-Link is doing “DNS Relay” to cover internet addresses out in the wild-n-woolly. The NAS is currently also doing DHCP so each computer coming onto the net doesn’t need to be manually configured.

But here’s where it gets squirrely. Even though the DHCP server on the NAS is set up to serve itself as a DNS server with highest priority, the powerbook on the net only seems to get the D-Link as a DNS server. For the longest time, I assumed it was a mis-configure on my part with the DHCP server, and I’ve poured over that config to no avail.

Eventually, I ran WireShark on the mac and had it renew its DHCP lease, and got some oddness.

The first is that it doesn’t seem to do a simple DCHP handshake. I don’t know DHCP well, and should probably just sit down and read the RFP, but I see what looks normal at first (.1.30 is the mac, .1.3 is the NAS):

But then, after that, there are a couple more “Request/ACK” pairs on txn id ..5d8, and after that, a whole series of “Discover/Offer” pairs on a new txn (..5d9).

Further, in the “ACK” responses, I see the DNS servers just like the DHCP server should be sending them:

Option: (t=6, l=16) Domain Name Server

Option: (6) Domain Name Server

Length: 16

Value: [long hex string]

IP Address: 192.168.1.3

IP Address: 192.168.1.1

IP Address: 68.94.156.1

IP Address: 68.94.157.1

But I can confirm that the Mac just isn’t doing anything with them:

corinthian:~ capehart$ ipconfig getpacket en0

op = BOOTREPLY

htype = 1

flags = 0

hlen = 6

hops = 0

xid = 4110104014

secs = 0

ciaddr = 0.0.0.0

yiaddr = 192.168.1.30

siaddr = 0.0.0.0

giaddr = 0.0.0.0

chaddr = 64:b9:e8:ca:1d:6e

sname =

file =

options:

Options count is 8

domain_name (string): sandman

domain_name_server (ip_mult): {192.168.1.1}

^^ WTF? ^^

router (ip_mult): {192.168.1.1}

subnet_mask (ip): 255.255.255.0

server_identifier (ip): 192.168.1.1

^^^ Shouldn’t that be the NAS instead? ^^^^

lease_time (uint32): 0xffffffff

dhcp_message_type (uint8): ACK 0x5

end (none):

corinthian:~ capehart$ grep nameserver /etc/resolv.conf

nameserver 192.168.1.1

corinthian:~ capehart$

(and, of course, 192.168.1.1 is the only thing that shows up in the Network control panel.)

In Google-researching this I came across this post mentioning the configuration file /System/Library/SystemConfiguration/IPConfiguration.bundle/Contents/Resources/IPConfiguration.xml and confirmed that mine still had the full set of entries on the DHCPRequestedParameterList key:

DHCPRequestedParameterList

1

3

6

15

119

95

252

44

46

47

I had set up the D-Link a while ago to do the DHCP serving, but I couldn’t configure the DNS server parameters for it. So, for a while, I thought the mac was still getting (or still using) it’s lease from the D-Link, but I did a Release/Renew with the D-Link unplugged and got the same response.

Can anyone tell me what I might be doing wrong? Or at least give me better places to look? Many in-advance “Thank you!”s