≡ Menu


Free Software Foundation Filed GPL Violations Suit Against Cisco

The Free Software Foundation (FSF) - a non-profit corporation founded by Richard Stallman; today announced that it has filed a copyright infringement lawsuit against Cisco. The FSF's complaint alleges that in the course of distributing various products under the Linksys brand Cisco has violated the licenses of many programs on which the FSF holds copyright, including GCC, binutils, and the GNU C Library. In doing so, Cisco has denied its users their right to share and modify the software.
[click to continue…]

Open Source Business Model Is Broken

From the article:

The open-source business model that relies solely on support and service revenue streams is failing to meet the expectations of investors. For anyone who hasn't been paying attention to the software industry lately, I have some bad news. The open-source business model is broken.

Companies have long hoped to make money from this freely available software by charging customers for support and add-on features. Some have succeeded. Many others have failed or will falter, and their ranks may swell as the economy worsens. This will require many to adopt a new mindset, viewing open source more as a means than an end in itself.

I do not agree 100% with the article. You can make tons of money by selling solution. For example, I can sell Linux Webserver cluster setup solution to meet my clients need or setup OpenBSD based CRAP solution to save tons of money on Cisco gear. Once solution is sold, someone need to monitor and fix the problem. Another option is bug fix or add addition features to original software. If you can add a value to customer, they will purchase your solution. What do you think?

=> Open Source: The Model Is Broken

Cisco Nexus 7000 Network Switch Can Route 15 Terabits Per Second

A new network switch with massive 20 times bandwidth capacity that of any switch currently available in market.

Cisco 7000 Network Switch scales beyond 15 terabits per second, with future availability of 40Gb and 100 Gb Ethernet and unified fabric I/O modules.
A More Scalable and Flexible Data Center Switch From Cisco
(Fig. 01: Cisco's 3-1/2-foot-tall box - Nexus 7000 Network Switch [image credit cisco])

More information available here and here.

Linux Shell Script to reboot DSL or ADSL router

If you need to reboot the router then you need to use web interface or telnet interface. Both methods take time, especially if you are playing with ACL, NAT or router firewall or you just wanna reboot the router from your Linux desktop. I have created simple script using expect tool to reboot router. Make sure you have expect command installed. Use rpm or apt-get command to install expect tool.

Shell script

Create a script as follows (tested on Beetel ADSL 220x router):

#!/usr/bin/expect -f
set timeout 20
# router user name
set name "admin"
# router password
set pass "PASSWORD"
# router IP address
set routerip ""
# Read command as arg to this script
set routercmd [lindex $argv 0]
# start telnet
spawn telnet $routerip
# send username & password
expect "Login:"
send -- "$name\r"
expect "Password:"
send -- "$pass\r"
# get out of ISP's  Stupid menu program, go to shell
expect " -> "
send --  "sh\r"
# execute command
expect "# "
send -- "$routercmd\r"
# exit
send -- "^D"

Save script and setup executable permission on it:
$ chmod +x router.exp

How do I run this script?

You need to pass command to script to execute on a router. For example to display router uptime, interface information and to reboot router you need to type command as follows:
$ ./router.exp uptime
$ ./router.exp ifconfig
$ ./router.exp reboot

Since my ISP router offers menu as soon as login above script may not work on generic router such as Cisco or linksys router. Therefore, you may need to modify above script to work with your router. If you are a new to expect then use autoexpect command to generate script. It watches you interacting with another program and creates an Expect script that reproduces your interactions For straightline scripts, autoexpect saves substantial time over writing scripts by hand. Even if you are an Expect expert, you will find it convenient to use autoexpect to automate the more mindless parts of interactions. It is much easier to cut/paste hunks of autoexpect scripts together than to write them from scratch. Moreover, if you are a beginner, you may be able to get away with learning nothing more about Expect than how to call autoexpect. Just type autoexecpt:
$ autoexpectautoexpect started, file is script.exp

Next type telnet command (telnet to the router):
$ telnet

Login: USER
Password: Password

Now type commands on the router:
$ ifconfig
$ exit

You are done, type exit to stop autoexepct command:
$ exit

autoexpect done, file is script.exp

Just type ./script.exp to run ifconfig command:
$ ./script.exp
You can now modify script.exp to reboot or to run other commands. It is a real lifesaver.

See also: