Super User is a question and answer site for computer enthusiasts and power users. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

Is it possible to write custom software for Cisco Router? Say, a custom software that tracks certain network activity. I know Cisco has a developer site, but I can't seem to find what I am looking for.

UPDATE: I am aware that open-source firmware like DD-WRT exists. But I am wondering if you can do this on Cisco's firmware.

More UPDATE: Hardware is Linksys E4200

share|improve this question
I think you should mention hardware. IIRC, their consumer Linksys routers have modified Linux kernels, while their big iron runs something called IOS – Rich Homolka Dec 12 '12 at 22:46
You don't have the source to the factory firmware so you cannot change it. If you want the feature you mention then loading a custom firmware is your only option. – Ramhound Dec 12 '12 at 23:44
@RichHomolka It's Linksys E4200 – pixelfreak Dec 12 '12 at 23:51
At consumer level hardware it can not be done. 0 products in the "Linksys" brand line are programmable with stock firmware. – Scott Chamberlain Dec 13 '12 at 0:39

I had similar desires recently as my old router died, so I found one that is supported by dd-wrt. It's a custom firmware with a linux core.

It would allow you to build scripts and such in pretty common ways (Python, limited bash, etc.). It may be a round-about way to get you where you want to be.

share|improve this answer
dd-wrt has a linix kernal, if you telnet or ssh in to the router you can install your own software on it as long as it is compatible with the processor architecture and the router meets the minimum specs of the program. – Scott Chamberlain Dec 12 '12 at 20:51
I am aware that open-source firmware like DD-WRT exists. But I am wondering if you can do this on Cisco's firmware. – pixelfreak Dec 12 '12 at 22:38
@pixelfreak Understood, however, I tend to be of the thought that if there is a huge community of support for this, and likely pre-written packages, I don't need to re-invent the wheel. But to each his own, hopefully someone has an answer for you more suited to your exact goal! – nerdwaller Dec 12 '12 at 22:52

A round about way to avoid hardware resource limitations on the router would be to use the router simply as a Switch. Create your own DHCP/Proxy and have all traffic run through the server. You will have a lot better control over what languages you can use as well as any existing solutions.

An example of some cool things that you can do with your own proxy:

How to put fear of God (law) into Wi-Fi hacking neighbors

The only reason why I suggested something that is not a direct answer for the path you were wanting to go down is because what you're trying to accomplish can have so many limiting factors.

share|improve this answer

Without custom firmware or an API, you can't do this. Cisco's developer resources are aimed primarily at their enterprise hardware (which has management APIs and the like), not their consumer hardware, which does not provide such functionality.

share|improve this answer

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .