Its called Simple port forwarding, and right now I have support for DD-WRT v23 & 24 which I was able to test on a linksys wrt54g. So I need to know if I can mark it to work with all dd-wrt firmware routers or if I need to make a new one for each router.
The program works by reading the box and button names, and thats how it tells where to put things, so as long as the page, text boxes and button names are all the same then it should support all the routers.
here is the script my program follows to give you an idea how it works
Im still trying to find a universal way of having it detect if a entry is already there. It doesn't over write, only adds new. But trying to have a program support so many different routers has its limits. The program is under 2 months old, so only time will tell how much I can get it to do.
Capturing what ports are in use for DD-WRT, linksys and some others is real easy for me to do, but its covering all routers is what is hard.
I understand. Nevertheless, just add it for these routers to begin with. The program does not have to provide the same features for every router (at the same time).
Why not have the program, if the router selected is supported in that respect, call the router and retrieve the mappings? If a router is selected for which that is not available, then it just does not.
Another thing: after the program has updated my router, the router has lost its WAN IP. DHCP renew brings it back. Firmware: DD-WRT v24-sp2 (10/14/0 mini. Happens every time.
So, if I update the router again now, it double adds the port forwards?
If so, and if it is to hard to only update forwards as needed, maybe the program should first delete all existing entries and then program the new ones? _________________ If you use DD-WRT, you HAVE to make a donation! See this topic too: http://www.dd-wrt.com/phpBB2/viewtopic.php?t=228
there are a lot of new features im going to be working on. First one I think will work for all routers is to read the entire html looking for the entry name from the program.
So if I have say CounterStrike1 in the program and it goes to add it again it will look for the word CountStrike1 in the html of the whole page and all boxes that have values. If it finds it it skips it. I need to test this first.
Retrieving isn't hard for some routers, DD-WRT is a good example. How my program checks which box it needs to go to is it looks at the name box, if it is not blank it moves to the next until it finds one. So retrieving those vales would be easy enough and have them added into the program. But im going to work on the checking if something already exists and skipping it first.
After I have that down and tested I may consider your idea of making the retrieval of the ports available for what routers I can (Some routers list the ports being forwarded in a list, no boxes, so no good way to have the program find what it needs).
I don't want the program to delete anything as of yet, cause a person may have something in there they don't want removed, I leave removing up to the user, but I do put a button "View/Remove Ports" in the program which takes them right to the page, at least a few less steps for them.
The program basically mimics what the user does, it user the same pages, clicks the same buttons. Is your WAN ip dropping just a bug with DD-wrt when new ports are applied?
After I take the kids trick or treating tonight im going to start working on the check if exists and get it rolling first.