MRTG, Routers.CGI and CiscoWorks

Unanswered Question
Nov 27th, 2007

I have CiscoWorks installed on a server that also has basic MRTG installed.

MRTG is working and is utilizing perl installed with CIscoWorks.

Can I install the Routers.cgi front end to enhance the graphic and organizational qualities without any problems?

Also, what about upgrading perl, can this be done with no problems to CiscoWorks?

Installing the RRDtools component requires installing the perl "gd" libraries.

I want to make sure I do not break CiscoWorks by enhancing the MRTG front end.

I have this problem too.
0 votes
  • 1
  • 2
  • 3
  • 4
  • 5
Overall Rating: 5 (4 ratings)
Joe Clarke Tue, 11/27/2007 - 23:11

What you are doing is unsupported. You would be better off (i.e. it would be safer for the CiscoWorks installation) installing another Perl (outside of CiscoWorks) for MRTG to use. You MUST NOT touch the Perl that ships with CiscoWorks. Additionally, anything you server using CiscoWork's web server will be subject to CiscoWorks authentication. Any URL must be authenticated, or explicitly listed in the allow_files.conf file.

wilson_1234_2 Wed, 11/28/2007 - 15:32

Thanks J,

Can I install a second installation of perl on the same server with no problem to CiscoWorks?

The MRTG installation is on the C drive and CiscoWorks in on the D drive of the server.

I thought about doing that but did not know if perl would overwite anything in the registry or any dll files that the CiscoWorks installation is using.

Also can you explain this:

"Additionally, anything you server using CiscoWork's web server will be subject to CiscoWorks authentication. Any URL must be authenticated, or explicitly listed in the allow_files.conf file."

The MRTG installation has it's own web server.

Joe Clarke Wed, 11/28/2007 - 15:51

You can safely install another version of Perl on the same server provided it is installed into a different location.

If you were to use CiscoWorks' web server to serve the MRTG CGIs, then you would be subject to CiscoWorks' authentication. If you will be using a different server, then that is not an issue.

wilson_1234_2 Wed, 11/28/2007 - 18:21


It is the same physical server, but MRTG uses it's own IIS service.

Do you know anything about MRTG?

Where are some good references to learn it?

The interfaces are showing incorrect speeds in the graphs.

Joe Clarke Wed, 11/28/2007 - 18:48

I typically use as a jumping off point. MRTG will use ifSpeed to get the interface speed. On IOS devices, ifSpeed is dictated by the bandwidth argument under the interface config.

You can also manually change the speed in the cfg file. At home, I have MRTG polling my FreeBSD router, and I had to manually adjust the mrtg.cfg to give it the correct speed for my cable-facing ethernet interface since I don't get a full 10 Mbps from my cable provider.

wilson_1234_2 Wed, 11/28/2007 - 19:05

There you go again working 24 hours a day.

I have been to MRTG site. There does not seem to be much infomation anywhere really.

The interface BW argument is correct on the router.

I noticed the cfg files were incorrect and adjusted them, maybe I just have not waited long enough.

Originally the serial and ethernet interface on the router were showing 200K,I do not know why they defaulted to that.

So should I assume the totals are correct as a percentage of the 200K and if my serial interface graph is showing 100K it is measuring accurately 50% of 1.544Mbps?

Joe Clarke Wed, 11/28/2007 - 21:27

I find the documentation links on the MRTG site quite useful for when I need to do more advanced stuff. That said, I have also used cacti for doing more advanced graphing.

You should verify the router is advertising the correct ifSpeeds. Also note that MRTG uses speeds in Bps. So my internal interface reads as 125000000 (or 1 Gbps). This is obtained from ifSpeed. My external interface is a 10 Mbps ethernet interface, but I manually modified the MaxSpeed directive in MRTG to 512000to match what my cable provider gives me.

As for your 200 K. Is that 200 KBps or 200 Kbps? The default ifSpeed for a serial interface in IOS is 1.544 Mbps or ~ 200 KBps. So if the interface is a full T1, and MRTG is reporting 100 Kbps throughput, then you are using about half of your available bandwidth.

wilson_1234_2 Thu, 11/29/2007 - 12:38

Are you sure I can install perl with no problems to CiscoWorks?

Also, suppose I have a single WIC-1T and a csu/dsu connected.

If the link is a 0-3Mbps burstable link, and this serial interface is only rated by Cisco at 0-2Mbps, do you think I would get the full utilization of the 0-3Mbps?

Joe Clarke Thu, 11/29/2007 - 12:49

Yes, you can install another version of Perl safely. Just be aware, that if you adjust your Path, you may not be able to run things like "perl NMSROOT\bin\" without specifying the fully-qualified path to CiscoWorks' Perl.

If the serial link can only do 2 Mbps, then that's all you should expect.

wilson_1234_2 Thu, 11/29/2007 - 13:20

Thanks J,

Are you saying that installing perl in another location will adjust the path on it's own during install?

On the serial interface, I can see it using CA Spectrum, going above 2.5Mbps, but the serial interface is only rated by Cisco as 2.048Mbps.

I was thinking the interface specs are just conservative and as long as the pipe is there, it will do it.

Joe Clarke Thu, 11/29/2007 - 13:22

No idea. If it does, just be aware that a lot of instructions from the TAC assume CiscoWorks Perl will be the first Perl in the Path.


This Discussion