I know nothing about the Mac, but I do know BSD which is nearly the same thing. First thing, the dhcp sequence is like this (simplified):
Client: Do I have an outstanding DHCP lease to renew? If yes, send DHCP-REQUEST together with old lease.
Server: DHCP server will ACK or NACK depending on availability of requested least (i.e. wrong IP range will get NACK)
Client: If NACK, or If no lease to renew, send DHCP-DISCOVER
Server: If allowed, send DHCP-OFFER, else NACK/IGNORE depending on config
Client: Compare OFFER with required settings and apply to interface if correct
So the windows machine already has a lease, asks to renew using REQUEST and gets ACK.
The Mac has no existing workable lease, so broadcasts with DISCOVER, gets an OFFER and nothing happens.
My guess would be that the Mac "require"s some DHCP options the server is not providing. Depending on the DHCP client, you need to find "dhclient.conf" and check the "require" line. Mine looks like this:
Code:
request subnet-mask, broadcast-address, time-offset, routers,
domain-name, domain-name-servers, host-name;
require subnet-mask, domain-name-servers, routers;
(snip)
There are some other options in there, but I don't think they concern us here..
If you use dhcpcd instead, I think it's all on the command line, man dhcpcd will tell you what the options mean.
Then you need to either change the DHCP server to provide the required options (probably best) or change the clients so they no longer require things the server does not provide.
Any of that make sense? I hope so!
C.