Dhcp cant get Microsoft Classless Static Route (option 249)



  • Hello.
    My ISP uses option 249 to send routes.
    What i ve got (modified interfaces.inc)

    Dec 27 23:20:41	dhclient[32765]: unknown dhcp option value 0xf9
    Dec 27 23:20:41	dhclient[32765]: unknown dhcp option value 0xf9
    Dec 27 23:20:41	dhclient[32765]: DHCPACK from 10.4.37.152
    Dec 27 23:20:41	dhclient[32765]: DHCPREQUEST on re0 to 255.255.255.255 port 67
    Dec 27 23:20:37	dhclient[32765]: DHCPREQUEST on re0 to 255.255.255.255 port 67
    Dec 27 23:20:35	dhclient[32765]: DHCPREQUEST on re0 to 255.255.255.255 port 67
    Dec 27 23:20:35	dhclient: PREINIT
    Dec 27 23:20:35	dhclient[32765]: ^
    Dec 27 23:20:35	dhclient[32765]: ^
    Dec 27 23:20:35	dhclient[32765]: request option-249, option
    Dec 27 23:20:35	dhclient[32765]: request option-249, option
    Dec 27 23:20:35	dhclient[32765]: /var/etc/dhclient_wan.conf line 2: option: unexpected option name.
    Dec 27 23:20:35	dhclient[32765]: /var/etc/dhclient_wan.conf line 2: option: unexpected option name.
    

    unknown dhcp option value 0xf9: hex to dec means 249 which is "DHCP Option Code 249 (0xF9) - Microsoft Classless Static Route Option"
    Is there any solution to "teach" pfsense work with them?
    Thanks.



  • Here's how I deal with the incomplete implementation of DHCP Client.

    Screen shots and old 2.0 patch here:
    DHCP Client Additional Custom Options Patch
    http://forum.pfsense.org/index.php/topic,40194.0.html

    2.1 patch here:
    Advanced DHCP Client Options & Config File Override
      Protocol Timing
      Send Options
      Request Options
      Require Options
      Option Modifiers

    https://github.com/bsdperimeter/pfsense/pull/275

    Optional config override file example from 2.0.1.

    
    # Actiontec MI424-WR Router Impersonation
    
    #	ISP:		Frontier FiOS
    #	Router Make:	Actiontec
    #	Router Model:	MI424WR-GEN2
    #	Router HW:	Rev. F
    #	Router FW:	20.12.2.4
    
    # pfSense 2.0.1 (FreeBSD 8.1)
    
    #interface "de1" {
     interface "{interface}" {
    
    # DHCP Protocol Timing Values
    timeout 60;
    retry 1;
    select-timeout 0;
    initial-interval 1;
    
    #bootp-broadcast-always;						# Bootp flags: 0x8000 (Broadcast)
    
    # DHCP Protocol Options
     send dhcp-class-identifier "Wireless Broadband Router";	# Option 60	## Hard Coded Class Identifier
     send dhcp-client-identifier "";					# Option 61	## Blank to Prevent Send
    
    #send host-name "Wireless_Broadband_Router";			# Option 12	## Hard Coded Host Name
     send host-name "{hostname}";					# Option 12	## Obtained From Web Configurator (WAN Hostname Setting)
    
     send domain-name "home";						# Option 15	## Hard Coded Domain Name
    
    # V-I Vendor-specific Information					# Option 125	## Hard Coded MAC
    #send option-125 "\x00\x00\x0d\xe9\x1f\x01\x06000FB3\x02\x0c00180160EB84\x03\x07MI424WR";
    #send option-125 00:00:0d:e9:1f:01:06:30:30:30:46:42:33:02:0c:30:30:31:38:30:31:36:30:45:42:38:34:03:07:4d:49:34:32:34:57:52;
    
    # V-I Vendor-specific Information					# Option 125	## Obtained From Web Configurator (WAN MAC Address Spoof Setting)
    #send option-125 "\x00\x00\x0d\xe9\x1f\x01\x06000FB3\x02\x0c{mac_addr_asciiU}\x03\x07MI424WR";
    #send option-125 00:00:0d:e9:1f:01:06:30:30:30:46:42:33:02:0c:{mac_addr_hexU:}:03:07:4d:49:34:32:34:57:52;
    
    # Parameter Request List						# Option 55	## Hard Coded Parameter Request List
    #request subnet-mask, broadcast-address, time-offset, routers, domain-name, domain-name-servers, time-servers, log-servers, default-ip-ttl, interface-mtu, vendor-encapsulated-options, dhcp-requested-address, dhcp-lease-time, dhcp-server-identifier, dhcp-parameter-request-list, dhcp-class-identifier, dhcp-client-identifier, www-server, option-125;
     request subnet-mask, broadcast-address, time-offset, routers, domain-name, domain-name-servers, time-servers, log-servers, default-ip-ttl, interface-mtu, vendor-encapsulated-options, dhcp-requested-address, dhcp-lease-time, dhcp-server-identifier, dhcp-parameter-request-list, dhcp-class-identifier, dhcp-client-identifier, www-server;
    
     require subnet-mask, domain-name-servers, routers;		# These are required by the client
    
     script "/sbin/dhclient-script";
    }
    
    

Locked