PfSense as DHCP server and DD-WRT as access points: DHCP not passing thru DD-WRT


  • Banned

    Hello

    Im not sure if it is a pfSense problem so forgive me.

    I have a virtualized pfSense box set as a DHCP server and 2 DD-WRT APs. My wireless clients connect to the DD-WRT APs perfectly but they do not get a IP address from them.

    If I set static IPs and my pfSense box as a gateway, wireless LAN/WAN works.

    What should I setup so they do recieve a IP address thru the DD-WRT APs from the pfSense box?



  • There is a tutorial somewhere on the dd-wrt site that tells you how to set it up as an access point… I don't have a link, but I've definitely seen it. That said, the process is basically to disable the DHCP server, disable any firewall functions, mac filtering, etc. Optionally, you can check the box to "assign WAN Port to LAN". Then plug into one of the LAN ports (or WAN port if you did "assign WAN to LAN").


  • Banned

    For more details:

    I can ping the pfSense box at 192.168.1.1
    but
    I cannot access the web interface thru a web browser

    This only happens on a wireless client. I can do it thru a wire client (everything works perfectly on a wired client)


  • Banned


  • LAYER 8 Global Moderator

    I use to run dd-wrt on a couple different old routers for AP.  As mentioned it as simple as turning off the dhcp server on the AP and connecting it to your network via one of the LAN ports on the wifi router being used as AP.

    If your saying you get dhcp from pfsense if you plug in with a wire to your dd-wrt ap, but wireless clients don't then clearly something with dd-wrt..  Do you have your SSID in dd-wrt as guest or vlan?

    You should get help on the dd-wrt site to be honst.  Since you have shown that dhcp from pfsense is working to a wired box on the dd-wrt device with something else connected to something else plugged in to lan.  Atleast that is how I read your comments.

    As an off the wall suggestion, where you say you can ping 192.168.1.1 but not access the gui.  You sure your on your wifi?  ;)  I have seen more times than anyone would think possible..  Where I am on wifi and can get to internet, but not able to get to device X..  Or something that should have gui is not working yet it pings.  Problem is they are on the wifi next door that is using the same ip range - but no they they don't have a printer at 192.168.1.14 like you do for example ;)



  • In DD-WRT Setup - Basic Setup
    Network Setup - Network Address Server Settings (DHCP)
    In the drop-down select DHCP Forwarder
    Enter the pfsense DHCP Server IP
    Click Apply Settings


  • Banned

    @johnpoz:

    I use to run dd-wrt on a couple different old routers for AP.  As mentioned it as simple as turning off the dhcp server on the AP and connecting it to your network via one of the LAN ports on the wifi router being used as AP.

    If your saying you get dhcp from pfsense if you plug in with a wire to your dd-wrt ap, but wireless clients don't then clearly something with dd-wrt..  Do you have your SSID in dd-wrt as guest or vlan?

    You should get help on the dd-wrt site to be honst.  Since you have shown that dhcp from pfsense is working to a wired box on the dd-wrt device with something else connected to something else plugged in to lan.  Atleast that is how I read your comments.

    As an off the wall suggestion, where you say you can ping 192.168.1.1 but not access the gui.  You sure your on your wifi?  ;)  I have seen more times than anyone would think possible..  Where I am on wifi and can get to internet, but not able to get to device X..  Or something that should have gui is not working yet it pings.  Problem is they are on the wifi next door that is using the same ip range - but no they they don't have a printer at 192.168.1.14 like you do for example ;)

    Great to hear from you :)

    My SSID in the DD-WRT is setup as normal. I dont have any difference between guest and/or VLAN.

    I think you are correct in saying this is a DD-WRT configuration issue but I could have kids, have them die, and still I wouldnt get a answer. It is a very slow forum to get answers.

    The wired PCs Im talking about is to a wired switch which is also connected to the DD-WRT AP. Those get DHCP leases as normal. A wireless client connected thru wireless does not get a DHCP least but if I set static IP settings to that wireless client, I do get access thru wireless. The only cable connected to the DD-WRT AP is from itself to a switch.

    Yeah, Im pretty sure its MY wifi because of the name of the SSID. I doubt anyone else would put that name and with a wireless scanner, I really cant see any other APs besides 1 or 2 (small neighborhood) so I dont think anyone else is using my SSID. Also, it asks me for my password. Also, since you mentioned it, I pinged other clients and they all reply so it would be REALLY odd that another person selects the exact same IPs I did for certain devices.

    @gjaltemba:

    In DD-WRT Setup - Basic Setup
    Network Setup - Network Address Server Settings (DHCP)
    In the drop-down select DHCP Forwarder
    Enter the pfsense DHCP Server IP
    Click Apply Settings

    I checked that out and yup, its exactly like that. Also checked off this: http://www.dd-wrt.com/wiki/index.php/Wireless_Access_Point and it seems to be the same of my settings as well….


  • LAYER 8 Global Moderator

    To troubleshoot I would do a sniff on pfsense to see if dhcp discover is even getting there.  And if is what mac its coming from.

    But what seems odd is you can not open the pfsense gui when you set static?  Do you have rules on the interface that would block that?  But normal internet access works if set static on wireless device?


  • Banned

    @johnpoz:

    To troubleshoot I would do a sniff on pfsense to see if dhcp discover is even getting there.  And if is what mac its coming from.

    Ill try that when I get a chance.

    @johnpoz:

    But what seems odd is you can not open the pfsense gui when you set static?  Do you have rules on the interface that would block that?  But normal internet access works if set static on wireless device?

    Yes. Normal internet access works once I set static and if set static I can also access the pfSense GUI so it should not be a firewall issue.

    BTW, I know (99%) its a DHCP issue because the IP gets set to 169.XX.XX.XX


  • Banned

    Woah, now this is weird: Wireshark does indeed show that there is a request from my wifi card's mac address….but it seems it doesnt give it a IP address.....

    There is the conversation. That .13 is my wired PC that Im doing the sniff from.


  • LAYER 8 Netgate

    @gjaltemba:

    In DD-WRT Setup - Basic Setup
    Network Setup - Network Address Server Settings (DHCP)
    In the drop-down select DHCP Forwarder
    Enter the pfsense DHCP Server IP
    Click Apply Settings

    No, no, no.

    Get the wireless clients on the dd-wrt device on the same layer 2 network with the pfSense interface and turn off all DHCP in dd-wrt.


  • LAYER 8 Netgate

    @riahc3:

    BTW, I know (99%) its a DHCP issue because the IP gets set to 169.XX.XX.XX

    I see Discover, Offer, Request, Ack.

    Where in the network is that capture taken from?



  • @Derelict:

    No, no, no.

    Get the wireless clients on the dd-wrt device on the same layer 2 network with the pfSense interface and turn off all DHCP in dd-wrt.

    My dd-wrt router has a static ip on my lan with pfsense as the gateway. For some unknown reason, my wireless clients are unable to obtain an ip without dhcp forwarder.


  • LAYER 8 Global Moderator

    You would not need a forwarder, the wifi is bridged to the lan in dd-wrt.. You clearly see the discover and offer from that sniff

    Why would you do the sniff from your wired client?  Just do it on pfsense interface under diag.  You have a release highlighted But under that I see discover, offer and request..  Which have to assume is your wifi client.


  • LAYER 8 Netgate

    @gjaltemba:

    @Derelict:

    No, no, no.

    Get the wireless clients on the dd-wrt device on the same layer 2 network with the pfSense interface and turn off all DHCP in dd-wrt.

    My dd-wrt router has a static ip on my lan with pfsense as the gateway. For some unknown reason, my wireless clients are unable to obtain an ip without dhcp forwarder.

    There is no "for some unknown reason" about it.  It's because your wireless clients and your pfSense interface are not on the same layer 2 network.  Your ddwrt is still being a router, not a bridge.


  • Banned

    Just to make sure this is the screen that is being talked about to sniff and this is the settings that have to be in place:


  • Banned

    Doesnt really show anything different really. Opening the packet file in Wireshark shows this:

    BTW, I did it from a wired client the first time around because I have port mirroring enabled on the switch and everything is mirrored to this wired client so it should be picking up anything that passes thru the LAN interface.

    The switch is a Netgear GS108E


  • LAYER 8 Netgate

    Look at the MAC address of the DHCP server in your capture.  I'd bet it's not your pfSense LAN port.

    I'll also bet you have pfSense on 192.168.1.1 and ddwrt WAN port getting an IP address from pfSense, then you have the ddwrt LAN also set on 192.168.1.1 with DHCP enabled and it's giving IP addresses to your wireless clients.

    That just can't work.

    Put your ddwrt in bridge mode (I think they stupidly call it "router" mode or something, which confuses everyone involved.)


  • Banned

    @Derelict:

    Look at the MAC address of the DHCP server in your capture.  I'd bet it's not your pfSense LAN port.

    And no, I wouldnt spoof the mac address as a NIC from a VMWare vendor. The server is the pfSense LAN.

    (On a side note, do I have to hide the mac address from my ESXi machine or can it still be identified?)

    @Derelict:

    I'll also bet you have pfSense on 192.168.1.1 and ddwrt WAN port getting an IP address from pfSense, then you have the ddwrt LAN also set on 192.168.1.1 with DHCP enabled and it's giving IP addresses to your wireless clients.

    @Derelict:

    That just can't work.

    Put your ddwrt in bridge mode (I think they stupidly call it "router" mode or something, which confuses everyone involved.)


  • LAYER 8 Global Moderator

    YOu don't have to hide a mac address from any machine..  Only thing you might want to hide mac from would be radio of AP wifi router that could be in some war driving database, etc.  While mac are unique - unless we were going to track down by the maker of said device where that product got sold, then with them who they sold it to and such, etc..  While they might be able to do that on TV and the movies with a few clicks of the mouse - in real life its a bit harder ;)

    Well there you go pfsense is seeing discover and sending offer..  What IP is being offered? Also since you see the request the client got the offer - so seems more like a client issue to me.  So why don't you post up that sniff so we can take a look at the details.  Or atleast email it to me - you know me from way back ;)

    From that discover, offer, request, ack sure looks like a complete dhcp transaction to me.  So you have multiple clients that can not get an IP from dhcp, or just 1 device?  Or type of device like your ipads, or such..  Post up that actual sniff so can follow the details.  Why don't you sniff on the wifi client now..  Maybe just the ack is not being seen?  Lets see a longer sniff - does it just keep asking and asking.. It should ask a few times before it goes to APIPA if its not seeing the ack.


  • Banned

    @johnpoz:

    So why don't you post up that sniff so we can take a look at the details.  Or atleast email it to me - you know me from way back ;)

    I can attach it here. In theory, it shouldn't have any identifiable information as it just looks at DHCP information.

    @johnpoz:

    From that discover, offer, request, ack sure looks like a complete dhcp transaction to me.  So you have multiple clients that can not get an IP from dhcp, or just 1 device?  Or type of device like your ipads, or such..  Post up that actual sniff so can follow the details.  Why don't you sniff on the wifi client now..  Maybe just the ack is not being seen?  Lets see a longer sniff - does it just keep asking and asking.. It should ask a few times before it goes to APIPA if its not seeing the ack.

    Ive done diagnostics more on my Windows 8.1 laptop than my Android smartphone but I do not have internet access on my Android smartphone either so I GUESS the issue is the same.

    OK so Im gonna do the following:

    1: Set my laptop as DHCP client again (im typing this to you from the laptop since it is static)
    2: Start a packet sniff from pfSense
    3: ipconfig /release
    4: ipconfig /renew
    5: Wait about a minute
    6: Stop the packet sniff from pfSense
    7: Post it here

    Does that sound good?


  • LAYER 8 Global Moderator

    sure - but send up that other sniff as well from pfsense.

    What exactly is release renew for - once you switch from static to dynamic it would request ip…

    You already have the sniff be it at mirror port or pfsense -- do sniff on client as well.  From the sniff you showed it looks to be a full dhcp transaction.. discover, offer, request, ack

    dhcp servers dont send out offers unless they see a discover, and clients don't send out requests unless they see the offer.  So clearly client and server are seeing each others traffic.  Only question is did it not see the ack for some reason.  So sniff on client tells you that side of the story.

    And looking into the details of the offer and request and ack tells you what was offered what was requested, etc.  If you don't see another discover or request then you got a client problem where thinks it has IP but is not actually setting it on the interface, etc.  Because if for some reason it didn't like or see the ack it wold send out more requests or discovers.



  • @Derelict:

    Put your ddwrt in bridge mode (I think they stupidly call it "router" mode or something, which confuses everyone involved.)

    My ddwrt is configured as Gateway mode, WAN disabled and DHCP Server disabled now. Wireless clients obtain ip from active DHCP server on lan.


  • Banned

    @johnpoz:

    sure - but send up that other sniff as well from pfsense.

    What exactly is release renew for - once you switch from static to dynamic it would request ip…

    Just to force it a "release" and "force" a renew.

    @johnpoz:

    You already have the sniff be it at mirror port or pfsense – do sniff on client as well.  From the sniff you showed it looks to be a full dhcp transaction.. discover, offer, request, ack

    Sorry for the stupid question but can I sniff in Wireshark with a 802.11n adapter under Windows correctly?

    Im gonna see if I can do this now as Im a bit in a hurry…


  • LAYER 8 Global Moderator

    Yeah this is really dead simple to turn any wireless router be it running dd-wrt or native firmware as AP.  You connect it to your network with a lan port and disable its dhcp server = AP.  You don't even really need an IP on your lan if you don't want - that just makes it easier to admin the wifi portion from your network is all.

    Its actual lan ip has nothing to do with bridge the wifi to to the lan ports.

    It seems clear to me from the sniffs, and that wired clients on the dd-wrt is getting dhcp fine that must be something wrong with the client to be honest.  Once we see sniff on the wifi client we can be sure - but he has shown in sniffs a full transaction discover, offer, request, ack..  That the client doesn't get the ack but gets the offer and sends a request seems odd.

    I would guess something wrong with client.  Once we see the full sniff and details of offer and request and ack maybe we will know more, etc.  But the mode of the router be it gateway/router/ap sholdn't really matter in pretty much every mode it bridges the wifi to the lan, and clearly there is discover going out on the wired lan for pfsense to see and send out a offer, etc.

    edit: unless windows sniffing wifi ?  What?  Your not sniffing the wifi traffic off the air, your sniffing the traffic that the client sees once its authenticated to the wifi network..  You should have on problems sniffing that be it windows, linux, bsd, whatever..  Here I fired up wireshark, connected to wifi network - here is it seeing traffic.  Notice the DELL, that is my built in wifi adapter – nothing fancy, etc.  Where you can have problems is sniffing the raw wifi traffic without being authed to the wifi, etc.



  • Banned

    Change to RAR and check your pm johnpoz

    wireshark.txt


  • LAYER 8 Global Moderator

    This is from your sniff on the client called client1.cap

    It shows your client releasing 1.88, then requesting 1.88 and then the dhcp server giving it 1.88 with the ack,.

    If your client is showing that it doesn't have an IP address, then that is on the client - because from this it clearly thinks it does.  It even releases that IP back to the dhcp server before it asks for new one and gets back 1.88 again, etc..

    But your client clearly shows ACK for the dhcp transaction when you sniff.  So your issue is with client nothing to do with pfsense or dd-wrt.

    I hid your mac because you had done that previous, and not my place to say what or what you don't want on public forum, etc.  But it all the same mac, etc..



  • LAYER 8 Netgate

    Everything is also in Status->System Logs->DHCP on pfSense.


  • Banned

    @johnpoz:

    This is from your sniff on the client called client1.cap

    It shows your client releasing 1.88, then requesting 1.88 and then the dhcp server giving it 1.88 with the ack,.

    If your client is showing that it doesn't have an IP address, then that is on the client - because from this it clearly thinks it does.  It even releases that IP back to the dhcp server before it asks for new one and gets back 1.88 again, etc..

    But your client clearly shows ACK for the dhcp transaction when you sniff.  So your issue is with client nothing to do with pfsense or dd-wrt.

    I hid your mac because you had done that previous, and not my place to say what or what you don't want on public forum, etc.  But it all the same mac, etc..

    So with this you are saying it is a Windows 8.1 problem?

    Before making this post, I thought back about what you said that it was only this client so I ran a few tests.

    With my Android smartphone, it does seem to get a IP from the pfSense and it can access the internet.

    So you mentioned its a problem with the client…..so I want ahead and tested if the problem is the laptop or Windows 8.1

    I loaded up a LiveUSB with Ubuntu on the same laptop and IT GETS A IP AND CAN ACCESS THE INTERNET.

    I took ANOTHER step. Windows 8.1 Safe Mode with networking. Same thing so the problem is obviously Windows 8.1

    So now what?  >:( It is so frustrating that at the end of the day its the fault of a operating system that randomly decides not to work.

    Obviously this is WAY out of the scope of pfSense so Im not sure what do to/ask anymore...

    @Derelict:

    Everything is also in Status->System Logs->DHCP on pfSense.

    Yup. It shows basically the same thing johnpoz posted in the pictures.


  • Banned

    Wired works.

    Oh fuck this…..now it suddenly works. I plugged the wire, unplugged the wire, tried to connect via wifi, and now it gets the IP, gateway, everything thru DHCP.....


  • LAYER 8 Global Moderator

    Same thing is in the logs for this, but its best to see with your own eyes sometimes what is happening with these protocols vs just a log dhcp server saying it sent offer, etc..

    For you 8.1 problem - try resetting the tcp/ip stack.  In elevated prompt

    netsh int ip reset

    or netsh int ip reset c:\path\resetlog.txt

    if you want a log.  Also check firewall settings and or antivirus/security software..  What is odd is it releases the address, so it knows it has it - just not showing/using it.  Try the reset of the stack.


  • Banned

    @johnpoz:

    Same thing is in the logs for this, but its best to see with your own eyes sometimes what is happening with these protocols vs just a log dhcp server saying it sent offer, etc..

    For you 8.1 problem - try resetting the tcp/ip stack.  In elevated prompt

    netsh int ip reset

    or netsh int ip reset c:\path\resetlog.txt

    if you want a log.  Also check firewall settings and or antivirus/security software..  What is odd is it releases the address, so it knows it has it - just not showing/using it.  Try the reset of the stack.

    Now it works. Do you still recommend I do this johnpoz?


  • LAYER 8 Global Moderator

    What it just started working out of the blue?  Or did you actually do something.. Is it using a different IP than the 1.88 one?  If its working then there would be no reason to reset the stack.


  • Banned

    @johnpoz:

    What it just started working out of the blue?  Or did you actually do something.. Is it using a different IP than the 1.88 one?  If its working then there would be no reason to reset the stack.

    1: I plugged the laptop wired and it got a IP from DHCP
    2: I unplugged it, wireless connected automatically and it got a IP from DHCP.

    I did nothing else. Yes, ipconfig shows it got a .88


  • LAYER 8 Global Moderator

    very odd..  But sounds like your good to go then.


Log in to reply