On Wed, Nov 05, 2008 at 11:32:36AM +0800, Uwe Dippel wrote: > This is the dmesg, and it clearly shows a compatibility problem; under > the default as well as under verbose states: > >> Nov 5 11:07:07 solN /sbin/dhcpagent[319]: [ID 566172 daemon.warning] >> recv_pkt: bad option overload >> Nov 5 11:13:18 solN last message repeated 17 times >> Nov 5 11:13:50 solN /sbin/dhcpagent[319]: [ID 566172 daemon.warning] >> recv_pkt: bad option overload >> Nov 5 11:15:50 solN last message repeated 11 times >> Nov 5 11:16:28 solN /sbin/dhcpagent[1156]: [ID 787751 daemon.error] >> dhcp_ipc_init: cannot bind to port 4999 (agent already running?) >> Nov 5 11:16:53 solN /sbin/dhcpagent[319]: [ID 566172 daemon.warning] >> recv_pkt: bad option overload > > It is beyond my horizon, what the "recv_pkt: bad option overload" means, > but it shows that Solaris is not going to accept offers from the dhcpd > of 4.4. Alas, my fault, I have no backup of 4.3, but exactly the same > had worked flawlessly throughout up to and including 4.3. > > Uwe
OpenSolaris code (http://src.opensolaris.org/source/xref/onnv/onnv-gate/usr/src/common/net/dhcp/scan.c) show: 150 if (pl->opts[CD_OPTION_OVERLOAD]) { 151 if (pl->opts[CD_OPTION_OVERLOAD]->len != 1) { 152 pl->opts[CD_OPTION_OVERLOAD] = NULL; 153 return (DHCP_BAD_OPT_OVLD); 154 } 155 switch (*pl->opts[CD_OPTION_OVERLOAD]->value) { 156 case 1: 157 field_scan(pkt->file, &pkt->cookie[0], pl->opts, 158 DHCP_LAST_OPT); 159 break; 160 case 2: 161 field_scan(pkt->sname, &pkt->file[0], pl->opts, 162 DHCP_LAST_OPT); 163 break; 164 case 3: 165 field_scan(pkt->file, &pkt->cookie[0], pl->opts, 166 DHCP_LAST_OPT); 167 field_scan(pkt->sname, &pkt->file[0], pl->opts, 168 DHCP_LAST_OPT); 169 break; 170 default: 171 pl->opts[CD_OPTION_OVERLOAD] = NULL; 172 return (DHCP_BAD_OPT_OVLD); 173 } 174 } Where DHCP_BAD_OPT_OVLD is what appears to print the 'Bad option overload' message. And hopefully your trace will show which case is being invoked, assuming this is the same in the Solaris code you are running. .... Ken