Netgear n600 3400v2 WAN driver source code.

7 posts / 0 new
Last post
Daniel Yount
Daniel Yount's picture
Netgear n600 3400v2 WAN driver source code.

  I had compiled a fresh firmware image (no modifications) to help debug my wan problem.  With the 3400v2 source I downloaded from the netgear site I can use the wireless and switch and serial and USB port just fine , but I cant get the WAN port to detect my dsl/cable modem. The WAN port is green on boot , but once it loads into Linux it goes amber and neve goes green again.

  Do I need to do something to the router source to add this driver or should it be installed and worked with the stock source code that is on the netgear site? The reason I bought this router was to make a custom WAN / SWITCH device. If I cant get the WAN connection to work, it is usuless to me without this driver.

Daniel Yount
Daniel Yount's picture
Had learned that the WAN port

Had learned that the WAN port was only a simple Ethernet port, like the switch ports but with the main VLAN configuration setup, so no special source was needed for the WAN port as I had thought it was X.25 or something,it was not.

But what had made this part hard was that even the source code that Netgear gives you on their site unmodified, the WAN port does not work. I had to remove the acos services it kept creating a udhcpc file it used as a DHCP script so I could make and use my own DHCP script.

Now I am trying to figure out how Netgear does its VLAN configuration. I can add and bring up Vlan1 and Vlan2, But I cant get them to talk to each other. I can even get vlan2 to log on to the cable modem and get DHCP and ping a website by name. But cant get a ping while on my PC. Need to find out how to add the vlan1 network to vlan2 and I will have a basic router that has web/cgi controls.

Daniel Yount
Daniel Yount's picture
Almost got everything I need

Almost got everything I need working. Was trying to use udhcpd server instead of the dnsmasq server that is used by default so I can separate DNS and DHCP servers. But the UDHCPD server seems not to have a gateway override as DNSMASQ does so may have to go back to it. I will release the source modifications I made to the default 3400v2 code and rom when I get it to a point of usability. I am using it right now to log on to the net. But hope it will help others with different version of Netgear routers get their version up and running with just the open source stuff.

Daniel Yount
Daniel Yount's picture
Tathagata Das said: Are you

Tathagata Das said: Are you using the source code of 3400v2 available at Netgear site or any other third party firmware ?

Its the source code form Netgear , modified the source to and recompiled to work with iptables removed acos stuff and netgear binary web server, using busybox http web server. also have the openwrt small iconv compiled for it as well as some other gfx and web libs. So people can start work on their custom version out of the box, as its not supported by any other current binary.

Daniel Yount
Daniel Yount's picture
Tathagata Das said: Nice work

Tathagata Das said: Nice work.

Well I almost had it for no reason my router no longer works, so cant even test the source code any more. So wont be releasing it.

Daniel Yount
Daniel Yount's picture
edoc said: Wow, Daniel, that

edoc said: Wow, Daniel, that sounds frustrating after all that work. I read on tomatousb (I think that was the forum site) that someone was trying to port Tomato to the n600/wndr3400v2, but no indications as to recent progress. With all of these being dumped into the market by Walmart, and others, one would think they'd be a demand. Meanwhile, I have OpenDNS in place to filter most of the garbage, and was trying to get DNS-O-Matic to play nicely with it.

I have not tried any of the other ROMs yet in a while.  I ended up modifying the original code to meet my needs, was a painful process as the web interface is not open and init system is not geared to /etc/init.d and iptables is not kernel version. Making my own GUI specificaly for the netgear source being slow about right now but its done, so people have a basic GPLv3 web control layout and widget set to work with. 

Saw the openDNS stuff. Just using busybox dns utility, using kernel iptables to filter stuff.

Daniel Yount
Daniel Yount's picture
edoc said: My N600/3400v2 is

edoc said: My N600/3400v2 is using plain vanilla V1.0.0.16_1.0.34 I don't see a place to control individual device MAC-associated access (there are 5 users and 3 need to be limited). It was somewhat trivial in Tomato but I don't see it in the Netgear interface. Does your modified code provide a way to do that, please? BTW: Do you have any idea why the N600 was originally released as a WNDR3700 then changed to a 3400? It's sometimes confusing when searching for answers on the Internet. Thanks!

No, my GUI is very basic , just enough to get your basic controls via web interface.(WAN, LAN, WLAN ,PORT FORWARDING) It is open source and in C. I have simple widgets for a coder to add their own options and windows for specific control to do just want you wanted. I imainge with time it will gain new items as default. But for now Its just for a coder to make a simple custom interface with custom firmware, specifically tied to the open source code tree Netgear has for each router.

I have added C lib

   for getting the basic network data

LIBNETDATA - IPv4, MAC, DNS, Gateway, broadcast, subnet

CWIDGETS GUI WEB TEMPLATES LIB- label key/value pairs with CGI posting.

GBC - gearbox controller - This is the framework to build and make a web interface via C

  using the cwidgets/netdata/netgear nvram libs and busybox httpd as webserver, but not tied to busybox httpd if someone wanted to use it on something else.

Will put up a simple web page with a HOWTO and the code, not at a BETA level yet though.