Syed Jahanzaib Personnel Blog to Share Knowledge !

April 16, 2012

February 11, 2012

Resignation Letter Sample

Filed under: General IT Related — Tags: , , — Syed Jahanzaib / Pinochio~:) @ 12:58 PM

Following is an resignation letter sample. Just in case any one need it :p

To
The Director,
New Allied Electronics Industries (Pvt) Ltd.

Subject:          RESIGNATION LETTER

Respected Sir,

I am currently working in New Allied Electronics as a “Network Engineer” in IT Department, currently appointed at K.D.C Branch Office . With reference to the above noted subject, I would like to resign from your company for some of my personnel reasons. Therefore it is humbly requested that kindly accept my resignation and relieve me from my duties.

My resignation is effective from today. I am providing NAEI with four weeks notice. My last working day will be 29th February, 2012

Thank you for the opportunities for professional and personal development that you have provided me during the last 3 years. I have enjoyed working for the company and appreciate the support provided to me during my time with the company.

If I can be of any help during this transition, with training or hiring please let me know as I would be happy to make myself available.

Regard’s
Yours Sincerely,


SYED JAHANZAIB

Network Engineer
KDC IT DEPT.
27th January, 2012

December 17, 2011

Howto install Windows XP from USB Drive?

Filed under: General IT Related, Microsoft Related — Tags: , , — Syed Jahanzaib / Pinochio~:) @ 4:41 PM

If you want to install Windows XP but your Desktop PC / Laptop has NO CDROM/NETWORK BOOT option , then still you can install Windows XP using USB Disk. Its simple and handy in many situations. Specially for network / hardware support personnel because USB have added benefits. You can  add / remove several apps on the fly from usb.

There are several ways to do this, For example If you have USB disk with under  < 2gb Space, you can follow this VERY simple and easy to follow Guide

http://komku.blogspot.com/2008/11/install-windows-xp-using-usb-flash-disk.html

But unfortunately for some reasons, it didn’t worked out for me .

So I decided to go with the USB_MULTIBOOT, In this example I am using the same.

Here We Start   . . .

.

1)
You will need a special tool name USB_MULTIBOOT that will copy xp cd to usb and enable the Usb to boot Windows XP setup.
You can Download it from

http://www.mediafire.com/?gyjy3tlgdon

Unzip it to any folder. For example
c:\usb_multiboot_10

.

2)
Run USB_MultiBoot_10.cmd from your the folder.
(As Shown in the image below)

Press any key to continue.

.

3)
Format Utility will appear, Select  ‘ H ‘ , It will then give you  several options to choose. Select the following.
FILE SYSTEM = NTFS
FORMAT OPTIONS = QUICK
(As Shown in the image below)


TIP: Using the “HP format” option works fine for any capacity, and you can use FAT32 / NTFS
without problems. This can be useful as more systems can read FAT32 than NTFS.

.

4)
Select Option 1   >   Select the WINDOWS XP Source path (CD or Extracted version)
(As Shown in the image below)


.

5)
Select Option 2  >  Select USB-Drive Target Drive 
(As Shown in the image below)

.

It will ask you to whether you want to install XP in Un-Attendend mode, which means that it will auto enter the required info during the setup installation like User names / Windows XP CD KEY / TimeZone etc.
Select YES and enter the required info like User Name CD Key etc. Follow the on screen instructions.
(As Shown in the image below)

.

6)

Now select option # 3 [Make MultiBoot and Copy Source] to start the setup copy process.
(As Shown in the image below)

.

After this It will start copying XP files to USB and will perform necessary actions to make it Bootable.
After All data is copied It will inform you that

FileCopy to USB-Drive is Ready -OK- Success” ,
Click YES to continue.
(As Shown in the image below)

.

ALL DONE. Your USB – Drive is ready for Booting.

Plug it to your computer and in BIOS select USB in first boot device.

After booting from USB you will see boot menu of usb , Something Like below image.

.

.

Choose Text installation at first time
and GUI INSTALLATION AFTER REBOOT TWICE !

( Description: Choose step 1 to start installing xp in text mode, partition setup etc,  After reboot choose step two, After continued install , choose  step 2 AGAIN to log into XP -

As soon as you arrive at the Windows XP Desktop you can safely remove the USB Drive.

IMPORTANT! DO NOT REMOVE USB STICK UNTIL YOU’LL SEE XP’s FINAL LOGIN SCREEN!

.

Regard’s
SYED JAHANZAIB
aacable@hotmail.com

December 16, 2011

CyebrCafe Pro Basic Configuration Guide

~!~ Article by SYED JAHANZAIB ~!~

I recently deployed Mikrotik base hotspot system at a customer’s internet cafe but It was missing something which was  “Control over the client system, better time management system, on the fly changing in time limit,  & anti theft system “. then Cybercafe pro name popped up in my mind. I used this tool many years back in a gaming zone at Gulshan-e-Iqbal.

Cyber Cafe Pro is a very powerful user time management base application/server for internet cafe base business. Its a server / client base system. You can create per-paid time codes / vouchers or User accounts.

There are two major components of this application.

# Cybercafe pro Server – (Main Control Station.)
Install this module to the computer which will be used as the front-desk or Main Control Station. IT can be Windows 7/Vista/XP/2003 .

# Cybercafe pro Client
Install this module to ALL the computers which will be used by customers. Upon installation, it will automatically detect CCP Server running on the LAN. Otherwise you can manually set it via using CCP Client application.
Note: Please install the CyberCafe Pro Server before the CyberCafe Pro Client — and install Client software on computers other than the Server

We will divide this article in two sections

1 # Server setup

2# Client setup


# C.C.P  SERVER SETUP

For some reasons, I will not discuss about the installation of CCP Server ver 5 module. Please read the following article for installation :)

http://syedjz.blogspot.com/2011/12/howto-crack-cybercafe-pro-ver-5.html

After CCP Server installation is done, Open the CCP Main Control Station (Short code name : MCS),
Click on Login to activate MCS.
See the below Image.

To start it every time windows start, Go to ADMIN > SYSTEM SETTINGS > and click on NT SERVICE, Select YES
See the below Image.

Now Its time to configure CCP Server configuration. First we will adjust “Client  Settings” .

Goto ADMIN   >  SETUP  >   CLIENT SETTINGS

Now you will be presented with CLIENT SETTINGS Panel where you can adjust / configure many client side tweaks.
Here at SECURITY TAB, You can adjust many functions like Disable Hotkeys/CD/Drives/Control panel Access etc. Choose the options as shown in the image below, later you can fine tune them as per your requirements.
See the below Image.

Now Go to “System Settings“, here you can allow/restrict some options like Startup Folders/Lock , reboot computer at end of session / etc.  Also here you can restrict login types. Either Timecodes or User Account. In this example We will chose TIMECODES. Time-code is a per-paid 5 Digits code (code length number can be extend) which client can use for login.

Choose the options as shown in the image below, later you can fine tune them as per your requirements.
See the below Image.

Now goto “Marquee” tab, Here you can add you banner text, which will be displayed at client side login screen. Its for advertisement purpose as shown in the image below.
See the below Image.

Basic configuration for client is done. It’s time to Generate prepaid Timecodes .

Goto TIEMCODES & click on GENERATE, You will be then presented with a new Panel of “GENERATE TIMECODES“.

Now you have to choose various options in this window. I am describing basics of all

1#  Number of Codes to Generate : How many prepaid time-codes to generate? (numbers)

2# Time Limit : Time limit defines for how long user can use this timecode, for example half hour / 1 hour / 2 hour

3#  Automatic Expiry: Here its absolutely upto you how you want to handle this option. In this example I have selected “Expired in specific number of days after this timecode is sold” Which means that When I will sell the code, it will auto expires after one day after 1st usage ,  It’s necessary to do so this ID it may not be used again and again.

4# Just Select “Full access to the windows desktop. So that when user logon via CCP Cleint module, he will be presented with the WINDOWS XP Desktop access after few seconds.  IF you don’t want to provide him with the desktop access, you have to create sets of allowed applicaiton in CCP Client admin section , user will see the panel list from where he can access only allowed apps.

Now click GENERATE AND SELL. ( If you select only Generate, it will not be marked ACTIVE (User wont be able to use it), so when you give this code to any client, you have to right click on the code and select SELL CODES to make it ACTIVE.

See the below Image.

Basic configuration with timecodes is ready at server end. Moving to client end section.

# C.C.P  CLIENT SIDE MODULE

At client pc, Install Ccp5-Client.exe, again installation is very simple, just click next next. See the image below.

at End of the client setup , Select the following.

After this  ,  REBOOT the client pc. After rebooting, You will see CyBerCafe Pro Client Login Window.
See the image below.

NOTE: IF you are unable to click the LOGON button as shown in the above image, then go back to CCP SERVER Main Control Station and you will be seeing one GREEN ICON which indicates that one client PC have been connected with the CCP Server.
Simply right click on it and select “Account / Timecode Group“.

See the image below. (Server Side)


After this you will be able to click LOGON button on client side.

See the image below. (client side)

After Login, you will see the windows desktop screen after few seconds.

As shown in the image below.

CCP Tips ‘N’ Tricks

HOWTO EXTEND TIME

If you want to extend the time for any already connected user, then simply follow the below images.

HOWTO CREATE MAPS for YOUR CYBER/GAMING CAFE

You can create interesting Live MAP of your Cyber Cafe and place your connected pc’s in the MAP as shown in the image below. You can then easily Drag n Drop the Pc’s to appropriate location as related to physical layout.

CUSTOMIZING RECEIP/VOUCHER

You can customize voucher/receipt of CCP. See the below image

***************************************

I hope you will find this guide very useful and simple to follow. There are lot of things that haven’t been discussed in this article as aim of writing this article was to simply enable the admin to guide on howto install basic version of CCP server with time code generation and howto connect client side PC with CCP server.  I will write more info when any requirement will be received.

Regard’s

SYED JAHANZAIB
aacable@hotmail.com
http://aacable.wordpress.com


December 7, 2011

“Disaster Recovery Plan” (D.R.P) as a part of “Business Continuity Plan” (B.C.P)

Filed under: General IT Related — Tags: , , — Syed Jahanzaib / Pinochio~:) @ 12:45 PM

Few years back, When I joined an company, I saw that there were no proper Documentations, No standard operating procedures (S.O.P’s) available and all the network was quite messed up. So I Decided to Document everything.

This document is an drafted version I made, It outlined all the proceedure / steps that should be taken when any disaster or downtime occurs at the network. [Its an incomplete version as it was the only drafted version I was able to retreive from my past email. I will try to complete it soon. I will try to add my DRP plan for the Mini ISP and Cable.Net Environment, hang on ]

HERE WE GO . . . . . . . . .

NEW  ALLIED  ELECTRONICS  INDUSTIES  (Pvt)  Ltd. IT DEPT.

DISASTER RECOVERY PLAN ( D.R.P)
as a part of
BUSINESS CONTNIUITY PLAN ( B.C.P )

SYED JAHANZAIB
NEW ALLIED ELECTRONICS INDUSTRIES (PVT) LTD.
syed.jahanzaib@nae.com.pk

 

What is Disaster Recovery?

Disaster Recovery (DR) is, or should be part of your Business Continuity plan. It is defined as the way of recovering from a disturbance to, or a destructive incident in, your daily Network / operations. In the context of Information Systems and Technology, this means that if an incident completely destroys data, slows down productivity, or causes any other major interruptions of your operations or your business, the process of reverting to normal operations with minimum outage from that incident is called Business Continuity. Disaster Recovery is, or should be, a part of that process. You could say that Business Continuity and Disaster Recovery go hand in hand, but they do vary depending on the area and subject. For example, if your WAN connection goes offline, it means that your business units can no longer communicate via email or internet with each other, although each local unit can still operate and continue to work. This scenario would definitely be outlined in your Business Continuity Plan. However, if your server room burns down in one location, the rebuilding of the server room and the data housed in it would be Disaster Recovery.

Why is Disaster Recovery Needed?

A lot of people may ask themselves:   “Why would we need a ‘guide’ for Disaster Recovery?”

If a Domain Controller (DC) has a critical failure, we just install another one”. This might seem to work at first, and even for a longer period in small organizations, but in the long run, there would be problems, and a lot of error messages. Correct recovery is crucial to ensure a stable AD environment. The speed at which problems appear, grows exponentially if there are multiple locations of various sizes across different time zones and countries

 Design Your Active Directory

In most corporations and large organizations, there are people with job titles such as “Network Architect”, “Windows Server Configuration Owner” or “Network Designer“. These people do not have these titles just for fun. In large organizations, there is an actual need for people whose sole purpose is to design or optimize the networking topology according to how technology progresses.

There are always new ways of doing things and new designs surfacing in the IT world, and those people need to stay on top of their respective fields.


Disaster Recovery for Active Directory

We have understand that DR is an important part of a Business Continuity plan. But now, we can go further and say that, DR for AD is only a part of a Disaster Recovery plan, and not the whole plan by itself. You are correct if you think that you should have different DR guides for different things.

It is important to take the standpoint that the person who performs the recovery has little or no knowledge of the system. If you roll out your own hardened and customized version of Windows 2003, some things might differ during the installation and someone who has no clear guide will install a system that differs from your actual DC install guidelines. This can cause incompatibility or result in an improperly-functioning system, later on. This happens say, when you have specific policies that are applied to DCs, and during an install process, the selection of policies is called in a manner different from the dictats of the DC policy.

You might think that this situation will never arise, but hurricane Katrina in the U.S., and the tsunami that struck Thailand, India, and others, proves that it can. Situations may arise when a knowledgeable person is not around at the time of crisis, so the guide needs to be as clear as possible. It may also be possible that the person doing the actual recovery is an external IT consultant or junior IT staff member because the senior and trained staff are not available. In this case, the person handling the recovery may not at familiar with your environment all be.

AD is a great system, but it is also very complex. Performing correct DR is therefore crucial. If AD forms a part of, or is the backbone of, your network and IT infrastructure, a proper guide to bringing it back online in the event of an incident needs to be as clear and concise as possible.

The Business Continuity plan, and the DR guides, especially the AD DR guides, should be practiced and tested at regular intervals. This effectively means that once a year or so, you need to test that your guides are working and that they will actually bring your business back online. In order to test all kinds of scenarios, building a test environment—preferably virtualized because it gives you much more flexibility such as rollbacks and snapshots—is a necessity.

It may be difficult to convince the top management that your systems could actually fail, but replicating your systems, or even just a crucial portion of your server infrastructure, and testing that would definitely be acceptable to them.


Documentation

Documentation seems to be a problem in many companies and is usually the component in a project that is most often overlooked. Every time that either a new employee starts or an external contractor is hired for an AD related project, instead of getting a binder with proper documentation, he or she is assigned a buddy who explains the systems and infrastructure. Then, the first new task is to write the documentation that has been missing for the last X years. However, after the first week he or she realizes there is not enough information and when they ask for it, they get some vague pointers on where to look.

Unfortunately, the usual circle is that documentation is left for later stages in the project, and over time gets forgotten or information is passed on by word of mouth, or as a collection of links to websites, instead. Over time, the missing or incomplete documentation becomes a costly burden to the organization knowledge is lost and, because of its non-existence, is impossible to back up. The eventual creation of this documentation, which wouldn’t have taken that much time to begin with, is a lengthy and expensive process.

Documentation is not really that hard to do, but it can be hard to convince your project or program manager allocate the extra time in order to complete it. Usually, the questions will arise as to why this needs to be done now and cannot be done later. A good argument for this kind of questioning would be to explain to him or her that at a later time, information is no longer fresh and remembered, or that it is necessary for backtracking problems. I have found that both of these work very well and generally managers will give you time to document properly. If, however, you don’t get the time, please make sure that you obtain written confirmation regarding the project or program managers acceptance that there is no way of knowing what has been done, and no time to write proper documentation.

Getting documentation done is actually quite easy. It comprises two steps, and once you have done this a couple of times, it will flow easily and you will produce documentation that your manager will actually be proud to show around.

First open notepad or any text editor and write, in short points, what you do, every step. In some cases, I just copy and paste the command, or the output, or both, into a line and keep going. Once you have completed the task, take a standard company template and format it into four sections. The outline is shown in the following table:

Document part or section Description
Presentation page A plain page containing nothing but the title of the document, the department, and the name of the author. A version table at the bottom of the page is optional.
Index A proper index table. This should be on its own page and will make it look more professional.
Purpose This describes, in a short paragraph, what this document is about.
Content All of the actions you took with detailed descriptions. Screenshots are a big winner here. Also make sure you separate different subjects with headers.

If you write a document about what group policies you are currently applying, then any change needs to be reflected in that document for it to beup-to-date.

Documentation plays a big part in disaster recovery, and sitting having afreshly-recovered domain, not knowing some of the settings that were applied earlier that now prevent things from working, dearly-it may even cost you even your job!

When writing your DR, please make sure that you have a printed copy in each location and at least one offsite copy per location. In some companies, it is standard practice for the domain or Enterprise admin at least to have a printed copy at home or on a USB key with him or her at all times. It is also good practice to have a printed copy or an electronic copy in the location’s safe so that it can be retrieved very quickly.

Write your documents regarding your infrastructure as clearly as possible, and do not make any assumptions about who will be reading the documents. It could very well be a summer worker or a trainee, although very often companies rely on professional DR-specialized companies. Some of these companies not only do regular, twice a year, complete DR in an isolated environment, but also sometimes provide you with warm sites to get your infrastructure back up and running more quickly. However, you never know what the disaster situation will be and if it is bad, you will want to ensure that everything possible is provided in the instructions.

Design and Implement a Disaster Recovery Plan for Your Organization

Implementing a Disaster Recovery guide in an organization that has never had one, or has had one that is outdated, may seem like an easy task. But it is not, as there are many hurdles that need to be overcome in the Disaster Recovery process. So, an accurate and proper method of implementation is very important. This chapter is designed to help you take that approach and get the whole process of Disaster Recovery implemented as fast as possible.

A lot of people assume that a Disaster Recovery guide (DRG) explains reasonably well what needs to be done to get systems back online. This is absolutely wrong. The first question that this assumption could raise is, why would one superficially touch the subject when you are writing a guide already? The second question could be that one never knows who will do the actual recovery. This statement is something that quite a few administrators that I know smiled over so at. The most compelling arguments, however are that someone technical is always around and that a non-technical person is unlikely to perform the recovery.

While both arguments have their validity, the risk of a non-technical person restoring one of the mission-critical systems and clicking the wrong button in the process, is just too high. Even if it takes a few more hours to write a proper guide, it can save days during system recovery.

The key to a successful and well-implemented DRG is motivation. If there is no motivation from the management and no motivation from the actual technical personnel, then it is not possible to develop a well-implemented and functional DRG. The all-too-common problem, though, is that the motivation usually comes in the form of an incident where a DRG would have helped but was not available.

Create a Business Continuity Plan

Business Continuity Plans are, as mentioned earlier, high-level documents and procedures. These should always accompany Disaster Recovery guides. A BCP can be created for the Active Directory as well, and the sample in Appendix can help us get started. But in order to create one, we need to have a clear view of our infrastructure and what impact any outage has on our business. The key thing that needs to be done is to define the acceptable downtime and recovery time.

The communications department should also be involved in this process so that the right communications channels and responsibilities are used and defined. Communications, within the company and with external entities, can be crucial in the event of a disaster if an organization has responsibilities to investors or is in collaboration with partners. Setting and defining the right channels and processes for company personnel helps to mitigate the outage because users will then know that there is an issue and that the IT department is working on it. They won’t bombard you with phone calls complaining that they cannot work properly.

The second important thing, though no less critical, is to define a call tree. We need to have a complete contact list and an escalation path clearly defined in our BCP. The communications department also needs to be involved in this.

 Design and Implement a Disaster Recovery Plan for Your Organization

The call tree is a diagram with different levels of escalation, with the responsible person and phone number listed. With this, it is easy for someone to follow the chain of command and understand who needs to give the go-ahead for a certain action.

The following diagram shows the call tree for LG N.A.E as an example: [image not available now]

During an outage or disaster, the communications department should take responsibility for communicating the issue to the entire workforce, and not just the technical staff. For example, the information bulletin could state that the IT department is aware of the problem and is working on solving it, and also give a rough estimate of the time within which the problem is expected to be fixed and normal operations resumed.

The BCP needs to be clearly understandable and well written, because in the event of a disaster, confusing instructions can hardly be helpful. Once the final draft is ready, it would be best to have the communications department or technical writer(s) go over it to ensure an easily-readable yet professional-looking BCP.

 Present it to the Management (Part 1 and 2)

This is a step that should be done by someone who has good presentation skills and an in-depth knowledge of the BCP that was designed. It is also a “two-part step” because the project has to get going start before the final draft can be approved. In order to clear this process with the management, the importance and the consequences of the BCP have to be communicated to them in anon-threatening manner.

Often, people who were deeply involved in the design of the BCP and the DRP failed in making it official due to their lack of presentation skills and “social connectivity”. Explaining in detail what we are trying to achieve and why it is crucial for the organization is essential. Once the process has been cleared and has received the go-ahead for creation of the BCP, we must proceed to the next step, and then come back to this step later.

Ultimately, it is in the best interest of the organization to have a proper DRP. Obtaining management clearance, and therefore being able to make the BCP and DRP an official standard in the organization, can open a lot of doors for you in the acceptance department. Whenever you hear complaints regarding the implementation, or disagreements in terms of content or testing, you can point to the directive and say: “take your complaints up to the next level“. Nine times out of ten, the discussion ends at that point.

 Define Roles and Responsibilities

This step is an important one because the people who have been delegated responsibilities are also accountable for them. This might not be what some people want, so the roles and responsibilities have to be discussed with the staff to ensure that they understand the implications of them.

A clear list of contacts and their roles in the BCP and DRG should be drawn up. This is not a step to be rushed. Make sure that everyone involved, including the managers, know what they are supposed to be doing when push comes to shove.

Also important here is the on-call role. Someone from the IT department should always be contactable. Rotation of this role, as well as adequate compensation for this duty, need to be clearly defined. The on-call person needs to have a clear understanding of what steps to take when something happens, and how he or she can determine whether this needs to be escalated or not.

Once everyone is on board and clear with their responsibilities, we need to put this into a visual form, a call tree. Many people, especially a lot of technical staff, complain about presenting things visually. & lot of professionals agree that a visual representation helps immensely in understanding a process, a visual representation of that process helps immensely. When you then read the text regarding that representation, most likely you will understand and memorize the process steps easier.

To get a clear picture of what roles and responsibilities should be included in the BCP of LG N.A.E, see the following table. This example gives an overview of who should be included.

Role/Title Name Email Telephone
Director Information Officer Office phone and emergency number
IT Manager Office phone and emergency number
IT Engineer / Designer(s) Office phone and emergency number
IT Administrator(s) Office phone and emergency number
Branch Technicians or Specialist(s) Office phone and emergency number
Branch System Specialist(s) Office phone and emergency number
Internal Communications Office phone and emergency number
External Communications Office phone and emergency number

 

Ensure that Everyone is Aware of Locations of the DRP

This has happened twice in companies that I worked with like Fariya Netoworks . They had invested a lot of money into a DRP process and tested it once. They passed with flying colors, but the man in charge (in this example, me) subsequently left the company. The DRP was put on ice because no one took the responsibility and even worse, the whole plan got “lost”.

At Some places , When First , I asked for the BCP and DRP, I got a blank face saying: “Well, we have it somewhere”. Eventually, someone dug up a draft version from their archived inbox. After 2 weeks of searching, I found the actual plan in an obscure and forgotten place on their intranet. Not really a good thing.

Please make sure that the location of the DRP is well known. Make a section in your IT pages in your intranet, print it out, and hand it to everyone, and always mail the latest version to the people involved. An off-site, updated, copy of the DRP and all its related documents, along with copies of software that is running in your organization, is absolutely critical. The process of keeping the DRP off-site in printed form and possibly also in electronic form is likely going to be an enormous time and money saver. This way, many copies will be around in case of an emergency.

 

 Define the Order of Restoration for Different Systems (Internet Servers / Domaind Controller / ADC / Mail Servers then Add One Server etc.

The contents to be recovered and their order of recovery should be clearly defined in the DRP and the BCP. (This means, first the root DC in the hub site, then the first Domain Controller, then the second, then one at a regional sites, and so on.)  Also to ensure internet connectivity you must have backup liens and proxy servers ready.

Go back to “Presentation to Management”

This is the final step. Once everything is implemented, documented, and tested, go back to the management and tell them that the task is complete. Show them numbers for recovery times, pie charts of possibilities, and maximum outage numbers. Once they are convinced that money was not wasted, get it all approved and standardized.

 

You should be well known by then as “the man” for disaster recovery and your job, in case of an emergency, just got much, much easier.


SUMMARY

In this presentation, we went through all the steps and processes required to get a DRP implemented successfully. Knowing the correct processes, even if it seems strange and out of place, and then applying these processes can save a lot of additional work, and possibly your job.

If you have a trained team and a plan that illustrates every step of the way, your downtime will be minimal and if the downtime is caused by something that you had no control over, such as a natural disaster or someone with a screwdriver in the wrong place, then your management and your company will know what they invested the time, effort and money into.

This is by no means a complete guide to implement a DRP but it should definitely point you in the right direction, and a good way there.
Regard’s

SYED JAHANZAIB
NEW ALLIED ELECTRONICS INDUSTRIES (PVT) LTD.

November 3, 2011

Server’s Monitoring Status Page a.k.a “SERVER STATUS”

I was looking for a web base server status tool to monitor my connectivity with the ISP and local servers , I did this in the past using simple Javascript which shows ON/OFF status for specific pc’s, But it was not fancy, I was looking for more simple n visually appealing tool/page, After some googling , I came across with “Server Status“  / http://rushland.net/projects.htm

Its a very good tool made in PHP/HTML along with MYSQL support. I used it to monitor WAN connectivity / Local Servers Live Status. It can be use to monitor services status of local or remote servers too. I modified it according to my requirements and the final result is as follows :)

September 21, 2011

Howto Monitor Mikrotik + ISA Server + Linux OR any Windows Pc using MRTG !

Howto Monitor Mikrotik + ISA Server + Linux OR any Windows Pc using MRTG !
[Advance Monitoring]

~!~ Article By Syed Jahanzaib ~!~


The Multi Router Traffic Grapher (MRTG) is a tool to monitor the traffic load on network links. MRTG generates HTML pages containing PNG images which provide a LIVE visual representation of this traffic.MRTG is not limited to monitoring traffic, though. It is possible to monitor any SNMP variable you choose. You can even use an external program to gather the data which should be monitored via MRTG. People are using MRTG, to monitor things such as System Load, Login Sessions, and about anything . MRTG even allows you to accumulate two or more data sources into a single graph. I have used MRTG to monitor everything on my network, whether its a switch, router, ports, isa server counters, windows counters, linux counters, harddrive space monitoring, etc etc.

How MRTG graphs looks like, see its samples from:

http://aacable.wordpress.com/2010/03/27/mrtg-graphs-samples/

I HAVE PASTED THE SAMPEL WORKING CFG FILES AT THE END. JSUT FOR REFERENCE.

Now we will move on to howto install MRTG. If you have Freshly installed UBUNTU , You need to install Web Server (apache2)

apt-get install apache2

Now we will install MRTG

apt-get install mrtg

(Choose Yes to continue)

Now we will install SNMP Server and other SNMP utilities so that web can collect information for locahost and remote pcs via snmp.

apt-get install snmp snmpd

Now set your community string in /etc/snmp/snmpd.conf , Remove all Lines and add the following line only.

rocommunity public

Make snmpd use the newly created file and make it listen to all interfaces:

Edit /etc/default/snmpd

Change from:

# snmpd options (use syslog, close stdin/out/err).
SNMPDOPTS='-Lsd -Lf /dev/null -u snmp -I -smux -p /var/run/snmpd.pid 127.0.0.1'

To:

# snmpd options (use syslog, close stdin/out/err).
#SNMPDOPTS='-Lsd -Lf /dev/null -u snmp -I -smux -p /var/run/snmpd.pid 127.0.0.1'
SNMPDOPTS='-Lsd -Lf /dev/null -u snmp -I -smux -p /var/run/snmpd.pid -c /etc/snmp/snmpd.conf'

and restart snmpd

/etc/init.d/snmpd restart OR service snmpd restart

Testing SNMP Service for localhost.

Now snmp service have been installed, its better to do a snmpwalk test from localhost or another remote host to verify our new configuration is responding correctly. issue the following command from localhost terminal.

snmpwalk -v 1 -c public 127.0.0.1


and you will see lot of oids and information which confirms that snmp service is installed and responding OK.


“Howto Monitor Windows Systems”

To Monitor All Windows base Performance Counters via SNMP/MRTG, You have to add an 3rd party addon in Windows. Goto http://erwan.l.free.fr/snmptools/ and download SNMPtools v1 and iptools

On your remote pc, for example ISA Server,
1) Copy snmptools.dll to Windows\system32\
2) Use regagent.reg file to setup snmptools info in Registry.
3) Now Restart the snmp service

That’s It, You have installed SNMPTOOLS.DLL and system is ready to be monitored remotely using Enterprise OID‘s enabled by SNMPTOOLS.DLL

Howt Use snmpwalk to get info via perfomance counters:

Use a snmpwalk tool to test

Main Enterprise OID:
 1.3.6.1.4.1.15

Howto Find OID’s to monitor specific counter. For example We want to monitor ISA Server Cache.

From your linux machine, do some snmpwalk to test the OID. First do a simple snmpwal to test if enterprise OID’s are working.

snmpwalk -v2c -c public 192.168.2.3 1.3.6.1.4.1.15

You will see a lot of OID‘s like

SNMPv2-SMI::enterprises.15.69.1 = STRING: "Terminal Services Session"
SNMPv2-SMI::enterprises.15.69.2 = STRING: "75"
SNMPv2-SMI::enterprises.15.69.3 = STRING: "2"
SNMPv2-SMI::enterprises.15.70.1 = STRING: "Terminal Services"
SNMPv2-SMI::enterprises.15.70.2 = STRING: "3"
SNMPv2-SMI::enterprises.15.70.3 = STRING: "-1"
SNMPv2-SMI::enterprises.15.71.1 = STRING: "ISA Server Cache"
SNMPv2-SMI::enterprises.15.71.2 = STRING: "22"
SNMPv2-SMI::enterprises.15.71.3 = STRING: "-1"
SNMPv2-SMI::enterprises.15.72.1 = STRING: "ISA Server Web Proxy"
SNMPv2-SMI::enterprises.15.72.2 = STRING: "159"
SNMPv2-SMI::enterprises.15.72.3 = STRING: "-1"
SNMPv2-SMI::enterprises.15.73.1 = STRING: "Web Service"
SNMPv2-SMI::enterprises.15.73.2 = STRING: "86"
SNMPv2-SMI::enterprises.15.73.3 = STRING: "2"
SNMPv2-SMI::enterprises.15.74.1 = STRING: "Web Service Cache"
SNMPv2-SMI::enterprises.15.74.2 = STRING: "36"
SNMPv2-SMI::enterprises.15.74.3 = STRING: "-1"
SNMPv2-SMI::enterprises.15.75.1 = STRING: "WMI Objects"
SNMPv2-SMI::enterprises.15.75.2 = STRING: "2"
SNMPv2-SMI::enterprises.15.75.3 = STRING: "-1"

Now We will catch the ‘ISA SERVER WEB PROXY CACHE HIT RATIO‘ to check the cache hit ratio. To simplify things, we can use IPTOOLS (by) Erwin to check the specific OID. You can get the iptools from http://erwan.l.free.fr/snmptools/

Use the following screenshot on howto use IPTOOLS tool.


So the acquired OID for ISA SERVER WEB PROXY CACHE HIT RATIO was 72.20 , we will use this with enterprise oid combination to get the Result.
From you MRTG box, use the following command to get the result.

snmpwalk -v2c -c public 192.168.2.3 1.3.6.1.4.1.15.72.20.0.2

Error in packet.
 Reason: (genError) A general failure occured
 Failed object: SNMPv2-SMI::enterprises.15.72.20.0.2

SNMPv2-SMI::enterprises.15.72.20.0.2 = INTEGER: 21

Now you have the result with INTEGER: 21
Means your isa server cache hit ratio is 21. You can confirm it iva using Microsoft Performance Counters :)

Some more examples.

ISA Server Firewall Service ACTIVE Sessions:


So the acquired for ISA Server Firewall Service ACTIVE Sessions OID was 14.4 , we will use this with enterprise oid combination to get the Result.
From you MRTG box, use the following command to get the result.

snmpwalk -v2c -c public 192.168.2.3 1.3.6.1.4.1.15.14.4.0.2
 Error in packet.
 Reason: (genError) A general failure occured
 Failed object: SNMPv2-SMI::enterprises.15.14.4.0.2

SNMPv2-SMI::enterprises.15.14.4.0.2 = INTEGER: 38

Now you have the result with INTEGER: 38
Means your isa server Firewall Active Users are 38 at this moment. You can confirm it iva using Microsoft Performance Counters :)

Now that we have the data, How can we use it to draw MRTG Graphs. Simple. Use the following sample of CFG to monitor Required

Data.

Edit the /etc/mrtg.cfg , remove all lines and paste the following data
(Dont forget to create new directory /var/www/mrtg/ for MRTG outputs )

#########################
# START OF /etc/mrtg.cfg#
#########################
# AUthor: Syed Jahanzaib
# Email : aacable@hotmail.com
# Web   : http://aacable.wordpress.com

WorkDir:/var/www/mrtg
Options[_]: growright, bits, nobanner, logscale
XSize[_]: 600
YSize[_]: 200
Suppress[_]: ym
EnableIPv6: no
RunAsDaemon: no
#LogFormat: rrdtool
# LibAdd: /usr/local/rrdtool-1.2.27/lib/perl/5.8.8/
# LibAdd: /usr/local/rrdtool-1.2.27/lib/perl/5.8.8/i386-linux-thread-multi/
Interval: 5

AddHead[_]: <style type="text/css"> <!-- a { color: #263F66; text-decoration: none; } a:hover { color: #785B41; text-decoration: none; } body { color: black; font: 8pt Verdana, Geneva, Arial, Helvetica, sans-serif; } h1 { font:  bold 16pt Verdana, Geneva, Arial, Helvetica, sans-serif; color: #342A21; } h2 { color: #666666; font: bold 12pt Verdana, Geneva, Arial, Helvetica, sans-serif; } h3 { color: black; font: bold 9pt Verdana, Geneva, Arial, Helvetica, sans-serif; } table { border: 0; } td { background-color: #E7DDD3; border: 0px solid #FFFFFF; color: Black; font: 8pt Verdana, Geneva, Arial, Helvetica,  sans-serif; vertical-align: top; } th { background-color: #735A4A; color: White; font: 11px  Verdana, arial, geneva,    helvetica, sans-serif; border: 0;   font-weight: bold;  text-align: left;    } --> </style>
Background[_]: #F6F1EE

#Start of ISA SERVER CACHE HIT .CFG sample
Target[isa.cachehit]: .1.3.6.1.4.1.15.14.4.0.2&.1.3.6.1.4.1.15.14.4.0.2:public@192.168.2.3
Title[isa.cachehit]: ISA SERVER Cache Hit Ratio
PageTop[isa.cachehit]: ISA SERVER Cache Hit Ratio
MaxBytes[isa.cachehit]: 100
Options[isa.cachehit]: gauge,nopercent,noo,growright
LegendI[isa.cachehit]: Cache Hit Ratio
LegendO[isa.cachehit]:
YLegend[isa.cachehit]: Cache Hit Ratio
Legend1[isa.cachehit]: Cache Hit Ratio
Legend2[isa.cachehit]:

#########################
# END OF /etc/mrtg.cfg#
#########################

Save it and Exit. Now you can use the following command to generate MRTG graphs. Run this command three time (when you add any new item, run this command three times to create graphs fully)

env LANG=C /usr/bin/mrtg /etc/mrtg.cfg

OR you can set it in crontab so that it will run automitaclly after every 5 minutes. Use the following command to add in CRONTAB.

crontab -e

(if it ask for editor, Choose 2 , NANO, its easier, now paste the following line)

*/5 * * * * mrtg /etc/mrtg/mrtg.cfg –logging /var/log/mrtg.log

Now make an index file, so that you will be able to open the graphs without typing the long url with file name.

indexmaker mrtg.cfg --output /var/www/html/mrtg/index.html -columns=2 --compact --perhost --nolegend

You can view your GRAPHSvia

http://192.168.2.1/mrtg

(Change the ip to your local ip) Some Sample Graphs for above created CFGs are as follows.

“Howto Monitor Interface Traffic via MRTG”

Now we will see how we can graph interface card for remote pc to monitor IN/OUT traffic.
From your mrtg box, issue this command to create CFG file.
(Note: snmp service must be installed at targeted remote pc and its community string must be set to pubic or accordingly)

cfgmaker public@192.168.2.3 > isa.cfg

Now You can link this isa.cfg file in main mrtg.cfg , so every time mrtg.cfg runs , it will also call up this isa.cfg
Open your /etc/mrtg.cfg  and add following line in the end.

Inlcude: isa.cfg

Now run MRTG to create graphs for this newly created isa.cfg (Or if you have already set it to run every 5 minutes in CRON, then wait for next 5-10 minutes to run it auto)

env LANG=C mrtg /etc/mrtg.cfg

Now you can view your newly created graphs from http://192.168.2.1/mrtg


This way you can add as many .cfg files separately and link them with master mrtg.cfg

“Howto Monitor LINUX Systems”

To Monitor Linux System, (I am short in time, therefore showing only ready amde CFG for it, you can modify or add them accordingly.)

“Howto Monitor CPU + HDD Tmeprature for Windows PC via MRTG”
“Using SPEEDFAN Addon”

We can monitor CPU / HDD / Mother Temperature via MRTG. For this purpose, we have to install an addon name SPEEDFAN on Window PC. You can download Speedfan from http://www.almico.com/speedfan444.exe and speedfan SNMP extention from http://deve.loping.net/projects/sfsnmp/downloads/ . After installation , you will see something similar

Now we will find OID for CPU and HDD Temp to make MRTG Graph.
Following are standard OID for SpeedFan (Via speedfan snmp extention module)

To Be Continued . . .

“Howto Monitor MIKROTIK ROUTEROS via MRTG”

On Your mikrotik, you have to enable SNMP in order to do snmp base monitoring. See the snapshot on howto enable SNMP on MT.

Now You can create mikrotik.cfg to monitor traffic graphs in the same way you have done for Microsoft Windows. eg.
cfgmaker public@192.168.2.9 > mikrotik.cfg

Now link this mikrotik.cfg into master mrtg.cfg via adding following
Include: mikrotik.cfg


” Howto Monitor Mikrotik CPU, Memory, and QUEUE via MRTG Graphing ;)


You have to find Mikrotik OID’s so taht MRTG can monitor it via SNMP, to do so , Open Terminal andpaste the following commands to enable SNMP

/snmp
 set contact=aacable@hotmail.com enabled=yes engine-id="" location="IT Dept." trap-community=public trap-target=0.0.0.0 trap-version=1
 /snmp community
 set public address=0.0.0.0/0 authentication-password="" authentication-protocol=MD5 encryption-password="" encryption-protocol=DES name=public read-access=yes security=none write-access=no
 /snmp
 set contact=aacable@hotmail.com enabled=yes engine-id="" location="IT Dept." trap-community=public trap-target=0.0.0.0 trap-version=1

Now we will get some OID‘s to monitor some resources of Mikrotik like CPU + MEM + Temprature + One single Queue for test user

[admin@MikroTik] > /system health
[admin@MikroTik] /system health> print oid

core: .1.3.6.1.4.1.14988.1.1.3.1.0 3.3v:
.1.3.6.1.4.1.14988.1.1.3.2.0 5v:
.1.3.6.1.4.1.14988.1.1.3.3.0 12v:
.1.3.6.1.4.1.14988.1.1.3.4.0
cpu-temp: .1.3.6.1.4.1.14988.1.1.3.6.0
board-temp: .1.3.6.1.4.1.14988.1.1.3.7.0

[admin@MikroTik] /system resource
[admin@MikroTik] /system resource> print oid

uptime: .1.3.6.1.2.1.1.3.0
total-hdd-space: .1.3.6.1.2.1.25.2.3.1.5.131073
used-hdd-space: .1.3.6.1.2.1.25.2.3.1.6.131073
total-memory: .1.3.6.1.2.1.25.2.3.1.5.65536
used-memory: .1.3.6.1.2.1.25.2.3.1.6.65536

[admin@MikroTik] /system resource cpu> print oid
load=.1.3.6.1.2.1.25.3.3.1.2.1

[admin@MikroTik] /queue simple> print oid

Flags: X - disabled, I - invalid, D - dynamic
0    name=.1.3.6.1.4.1.14988.1.1.2.1.1.2.1
bytes-in=.1.3.6.1.4.1.14988.1.1.2.1.1.8.1
bytes-out=.1.3.6.1.4.1.14988.1.1.2.1.1.9.1
packets-in=.1.3.6.1.4.1.14988.1.1.2.1.1.10.1
packets-out=.1.3.6.1.4.1.14988.1.1.2.1.1.11.1
queues-in=.1.3.6.1.4.1.14988.1.1.2.1.1.12.1
queues-out=.1.3.6.1.4.1.14988.1.1.2.1.1.13.1

Now that we have some OID’s We can use the following CFG file to create various graphs of above data.
Including CPU Load / Temprature / Memory Usage and one simple Queue for specific User ,
just for Example.

### MIKROTIK 192.168.2.9 CPU load ###

Target[192.168.2.9_cpu]: 1.3.6.1.2.1.25.3.3.1.2.1&1.3.6.1.2.1.25.3.3.1.2.1:public@192.168.2.9
AbsMax[192.168.2.9_cpu]: 100
MaxBytes[192.168.2.9_cpu]: 100
Title[192.168.2.9_cpu]: MIKROTIK CPU load
PageTop[192.168.2.9_cpu]: <H1>MIKROTIK CPU load</H1>
Options[192.168.2.9_cpu]: gauge,growright,nopercent, noo
YLegend[192.168.2.9_cpu]: CPU load
ShortLegend[192.168.2.9_cpu]: %
LegendI[192.168.2.9_cpu]: CPU load (percentage)

# Mikrotik PPP ACTIVE Users
Target[mtpppusers]: 1.3.6.1.4.1.9.9.150.1.1.1.0&1.3.6.1.4.1.9.9.150.1.1.1.0:public@192.168.2.9
Title[mtpppusers]: Active PPP Users on MT
PageTop[mtpppusers]: <H1> Active PPP Users on MT</H1>
MaxBytes[mtpppusers]: 300
Colours[mtpppusers]: B#8888ff,B#8888ff,B#5398ff,B#5398ff
Options[mtpppusers]: gauge,nopercent,noo,integer,growright
LegendI[mtpppusers]: Active PPP Users on MT
LegendO[mtpppusers]:
YLegend[mtpppusers]: Active PPP Users on MT
Legend1[mtpppusers]: Active PPP Users on MT
Legend2[mtpppusers]:

You can create graphs for about any thing you like. Its really powerful and I always prefer MRTG over other easy applications like CACTI or others. Y ou can modify it as you like.

More samples can be obtained from:

http://aacable.wordpress.com/2010/03/27/mrtg-graphs-samples/

I will add more MRTG details on howto monitor linux / microsoft / MIKROTIK son.

MRTG WORKING CFG EXAMPLES, JUST FOR REFERENCE

#########################
# START OF /etc/mrtg.cfg#
#########################
# AUthor: Syed Jahanzaib
# Email : aacable@hotmail.com
# Web   : http://aacable.wordpress.com

WorkDir:/var/www/html/mrtg
Options[_]: growright,nobanner,logscale,pngdate,bits
Options[^]: growright,nobanner,logscale,pngdate,bits
XSize[_]: 600
YSize[_]: 200
EnableIPv6: no
RunAsDaemon: no
Interval: 5
Logformat: rrdtool
LoadMIBs: /usr/share/snmp/mibs/HOST-RESOURCES-MIB.txt, /usr/share/snmp/mibs/IF-MIB.txt, /usr/share/snmp/mibs/UCD-SNMP-MIB.txt, /cfg/mib.txt
#LoadMIBs: /cfg/mib.txt
PageFoot[^]: <i>Page managed by <a href="mailto:aacable@hotmail.com">SYED JAHANZAIB</a></i>
AddHead[_]: <style type="text/css"> <!-- a { color: #263F66; text-decoration: none; } a:hover { color: #785B41; text-decoration: none; } body { color: black; font: 8pt Verdana, Geneva, Arial, Helvetica, sans-serif; } h1 { font:  bold 16pt Verdana, Geneva, Arial, Helvetica, sans-serif; color: #342A21; } h2 { color: #666666; font: bold 12pt Verdana, Geneva, Arial, Helvetica, sans-serif; } h3 { color: black; font: bold 9pt Verdana, Geneva, Arial, Helvetica, sans-serif; } table { border: 0; } td { background-color: #E7DDD3; border: 0px solid #FFFFFF; color: Black; font: 8pt Verdana, Geneva, Arial, Helvetica,  sans-serif; vertical-align: top; } th { background-color: #735A4A; color: White; font: 11px  Verdana, arial, geneva,    helvetica, sans-serif; border: 0;   font-weight: bold;  text-align: left;    } --> </style>
Background[_]: #F6F1EE

Include: /cfg/mt.cfg
Include: /cfg/proxy.cfg
Include: /cfg/gw.cfg
Include: /cfg/rm.cfg
Include: /cfg/ping.cfg

#########################
# END OF /etc/mrtg.cfg#
#########################

 

### mt.cfg
######################################################################
# System: MikroTik
# Description: router
# Contact: aacable@hotmail.com
# Location: Glassline Nawabshah
######################################################################

### Interface 1 >> Descr: 'lan' | Name: 'lan' | Ip: '' | Eth: '00-0e-0c-06-7c-96' ###

Target[10.10.0.1_1]: 1:gl@10.10.0.1:
SetEnv[10.10.0.1_1]: MRTG_INT_IP="" MRTG_INT_DESCR="lan"
MaxBytes[10.10.0.1_1]: 5000000
Title[10.10.0.1_1]: Traffic Analysis for MIKROTIK PPP SERVER USER
PageTop[10.10.0.1_1]: <h1>Traffic Analysis for MIKROTIK PPP SERVER USER LAN</h1>
<div id="sysdetails">
<table>
<tr>
<td>System:</td>
<td>MikroTik in Glassline Nawabshah</td>
</tr>
<tr>
<td>Maintainer:</td>
<td>aacable@hotmail.com</td>
</tr>
<tr>
<td>Description:</td>
<td>USER LAN</td>
</tr>
</table>
</div>


### Interface 2 >> Descr: 'proxy' | Name: 'proxy' | Ip: '192.168.20.1' | Eth: '00-0e-0c-06-5b-be' ###

Target[10.10.0.1_2]: 2:gl@10.10.0.1:
SetEnv[10.10.0.1_2]: MRTG_INT_IP="192.168.20.1" MRTG_INT_DESCR="proxy"
MaxBytes[10.10.0.1_2]: 12500000
Title[10.10.0.1_2]: Traffic Analysis for Mikrotik PROXY interface connected with SQUID
PageTop[10.10.0.1_2]: <h1>Traffic Analysis for Mikrotik Proxy interface connected with SQUID</h1>
<div id="sysdetails">
<table>
<tr>
<td>System:</td>
<td>MikroTik PPP SERVER Glassline Nawabshah</td>
</tr>
<tr>
<td>Maintainer:</td>
<td>aacable@hotmail.com</td>
</tr>
<tr>
<td>Description:</td>
<td>PROXY interface connected with SQUID</td>
</tr>
<tr>
</table>
</div>


### Interface 3 >> Descr: 'wan' | Name: 'wan' | Ip: '111.111.111.111' | Eth: '00-13-72-93-4b-c0' ###

Target[10.10.0.1_3]: 3:gl@10.10.0.1:
SetEnv[10.10.0.1_3]: MRTG_INT_IP="111.111.111.111" MRTG_INT_DESCR="wan"
MaxBytes[10.10.0.1_3]: 12500000
Title[10.10.0.1_3]: Traffic Analysis for MIKROTIK WAN
PageTop[10.10.0.1_3]: <h1>Traffic Analysis for MIKROTIK WAN</h1>
<div id="sysdetails">
<table>
<tr>
<td>System:</td>
<td>MikroTik PPP SERVER Glassline Nawabshah</td>
</tr>
<tr>
<td>Maintainer:</td>
<td>aacable@hotmail.com</td>
</tr>
<tr>
<td>Description:</td>
<td>WAN LINK  </td>
</tr>
<tr>
</table>
</div>


### Interface 4 >> Descr: 'dmz' | Name: 'dmz' | Ip: '192.168.2.1' | Eth: '00-0e-0c-06-62-54' ###

Target[10.10.0.1_4]: 4:gl@10.10.0.1:
SetEnv[10.10.0.1_4]: MRTG_INT_IP="192.168.2.1" MRTG_INT_DESCR="dmz"
MaxBytes[10.10.0.1_4]: 12500000
Title[10.10.0.1_4]: Traffic Analysis for MIKROTIK DMZ/FTP
PageTop[10.10.0.1_4]: <h1>Traffic Analysis for MIKROTIK DMZ/FTP</h1>
<div id="sysdetails">
<table>
<tr>
<td>System:</td>
<td>MikroTik PPP SERVER Glassline Nawabshah</td>
</tr>
<tr>
<td>Maintainer:</td>
<td>aacable@hotmail.com</td>
</tr>
<tr>
<td>Description:</td>
<td>DMZ/FTP  </td>
</tr>
</table>
</div>

### MIKROTIK 10.10.0.1 CPU load ###

Target[192.168.2.9_cpu]: 1.3.6.1.2.1.25.3.3.1.2.1&1.3.6.1.2.1.25.3.3.1.2.1:gl@10.10.0.1
AbsMax[192.168.2.9_cpu]: 100
MaxBytes[192.168.2.9_cpu]: 100
Colours[192.168.2.9_cpu]: R#ff4f27,Y#FFFF00,,R#ff4f27,Y#FFFF00
Title[192.168.2.9_cpu]: MIKROTIK PPP Server CPU load
PageTop[192.168.2.9_cpu]: <H1>MIKROTIK PPP Server CPU load</H1>
Options[192.168.2.9_cpu]: gauge,growright,nopercent, noo
YLegend[192.168.2.9_cpu]: CPU load
ShortLegend[192.168.2.9_cpu]: %
LegendI[192.168.2.9_cpu]: CPU load (percentage)


# Mikrotik PPP ACTIVE Users
Target[mtpppusers]: 1.3.6.1.4.1.9.9.150.1.1.1.0&1.3.6.1.4.1.9.9.150.1.1.1.0:gl@10.10.0.1
Title[mtpppusers]: MIKROTIK Active PPP Users on MT/PPP Server
PageTop[mtpppusers]: <H1> MIKROTIK Active PPP Users on MT/PPP Server</H1>
MaxBytes[mtpppusers]: 300
Colours[mtpppusers]: B#8888ff,B#8888ff,B#5398ff,B#5398ff
Options[mtpppusers]: gauge,nopercent,noo,integer,growright
LegendI[mtpppusers]: Active PPP Users on MT
LegendO[mtpppusers]:
YLegend[mtpppusers]: Active PPP Users on MT
Legend1[mtpppusers]: Active PPP Users on MT
Legend2[mtpppusers]:

 

### gw.cfg
### GW WEB

### Interface 4 >> Descr: 'eth2' | Name: 'eth2' | Ip: '111.111.111.111' | Eth: '00-13-72-93-3f-4c' ###

Target[10.10.0.4_4]: 4:gl@10.10.0.4:
SetEnv[10.10.0.4_4]: MRTG_INT_IP="111.111.111.111" MRTG_INT_DESCR="eth2"
MaxBytes[10.10.0.4_4]: 125000000
Title[10.10.0.4_4]: Traffic Analysis for GW / WEB SERVER WAN
PageTop[10.10.0.4_4]: <h1>Traffic Analysis for GW / WEB SERVER WAN</h1>
<div id="sysdetails">
<table>
<tr>
<td>System:</td>
<td>GW / WEB SERVER WAN</td>
</tr>
<tr>
<td>Maintainer:</td>
<td>aacable@hotmail.com</td>
</tr>
</table>
</div>


### Interface 5 >> Descr: 'br0' | Name: 'br0' | Ip: '10.10.0.4' | Eth: '' ###

Target[10.10.0.4_5]: 5:gl@10.10.0.4:
SetEnv[10.10.0.4_5]: MRTG_INT_IP="10.10.0.4" MRTG_INT_DESCR="br0"
MaxBytes[10.10.0.4_5]: 1250000
Title[10.10.0.4_5]: Traffic Analysis for GW / WEB SERVER BRIDGE INTERFACE
PageTop[10.10.0.4_5]: <h1>Traffic Analysis for GW / WEB SERVER BRIDGE INTERFACE</h1>
<div id="sysdetails">
<table>
<tr>
<td>System:</td>
<td>GW / WEB SERVER BRIDGE INTERFACE</td>
</tr>
<tr>
<td>Maintainer:</td>
<td>aacable@hotmail.com</td>
</tr>
<tr>
<td>Description:</td>
<td>GW / WEB SERVER BRIDGE INTERFACE  </td>
</tr>
</table>
</div>



LoadMIBs: /usr/share/snmp/mibs/UCD-SNMP-MIB.txt
Target[localhost.cpu]:ssCpuRawUser.0&ssCpuRawUser.0:gl@localhost+ssCpuRawSystem.0&ssCpuRawSystem.0:gl@localhost+ssCpuRawNice.0&ssCpuRawNice.0:gl@localhost
RouterUptime[localhost.cpu]: gl@localhost
MaxBytes[localhost.cpu]: 100
Title[localhost.cpu]: GW/WEB SERVER CPU Load
PageTop[localhost.cpu]: <h1>GW/WEB SERVER Active CPU Load %</h1>
Colours[localhost.cpu]: R#ff4f27,Y#FFFF00,,R#ff4f27,Y#FFFF00
Unscaled[localhost.cpu]: ymwd
ShortLegend[localhost.cpu]: %
YLegend[localhost.cpu]: CPU Utilization
Legend1[localhost.cpu]: GW/WEB SERVER Active CPU in % (Load)
Legend2[localhost.cpu]:
Legend3[localhost.cpu]:
Legend4[localhost.cpu]:
LegendI[localhost.cpu]: Active
LegendO[localhost.cpu]:
Options[localhost.cpu]: growright,nopercent

# Memory Monitoring (Total Versus Available Memory in KB)
Target[gw.memory]: .1.3.6.1.4.1.2021.4.6.0&.1.3.6.1.4.1.2021.4.5.0:gl@localhost * 1000
Title[gw.memory]: LINUX GW Free Memory in MBytes
PageTop[gw.memory]: <H1>LINUX GW Free Memory in Bytes</H1>
MaxBytes[gw.memory]: 100000000000000
ShortLegend[gw.memory]: B
YLegend[gw.memory]: MB
LegendI[gw.memory]: Free
LegendO[gw.memory]: Total
Legend1[gw.memory]: Free memory
Legend2[gw.memory]: LINUX GW Total memory
Options[gw.memory]: gauge,growright,nopercent
kMG[gw.memory]: k,M,G,T,P,X

# Memory Monitoring (Percentage usage)
Title[gw.mempercent]: LINUX GW Percentage Memory Free in (%)
PageTop[gw.mempercent]: <H1>LINUX GW Percentage Free Memory</H1>
Target[gw.mempercent]: ( .1.3.6.1.4.1.2021.4.6.0&.1.3.6.1.4.1.2021.4.6.0:gl@localhost ) * 100 / ( .1.3.6.1.4.1.2021.4.5.0&.1.3.6.1.4.1.2021.4.5.0:gl@localhost )
options[gw.mempercent]: growright, gauge, nopercent, integer
Unscaled[gw.mempercent]: ymwd
MaxBytes[gw.mempercent]: 100
YLegend[gw.mempercent]: Memory %
ShortLegend[gw.mempercent]: Percent
LegendI[gw.mempercent]: Free
LegendO[gw.mempercent]:
Legend1[gw.mempercent]: LINUX GW Percentage Free Memory
Legend2[gw.mempercent]:

### GW / Web Server Harddisk DRIVE Utilization ###
Target[gw.hdd]: .1.3.6.1.2.1.25.2.3.1.6.31&.1.3.6.1.2.1.25.2.3.1.6.31:gl@localhost / .1.3.6.1.2.1.25.2.3.1.5.31&.1.3.6.1.2.1.25.2.3.1.5.31:gl@localhost * 100
Options[gw.hdd]: growright, gauge, integer, noo
MaxBytes[gw.hdd]: 100
LegendI[gw.hdd]: Total Partition Used
LegendO[gw.hdd]:
Legend1[gw.hdd]: Total Partition Used
Legend2[gw.hdd]:
Title[gw.hdd]: GW / Web Server Harddisk DRIVE Utilization
PageTop[gw.hdd]: <h1>GW / Web Server Harddisk DRIVE Utilization</h1>
Unscaled[gw.hdd]: ymwd
ShortLegend[gw.hdd]: %
YLegend[gw.hdd]: % Disk Used

</pre>
### proxy.cfg
######################################################################
# System: proxy
# Description: Linux proxy 2.6.31-23-generic-pae #75-Ubuntu SMP Fri Mar 18 19:14:10 UTC 2011 i686
# Contact: root
# Location: Unknown
######################################################################

LoadMIBs: /cfg/mib.txt

### Interface 2 >> Descr: 'eth0' | Name: 'eth0' | Ip: '192.168.20.2' | Eth: '00-0e-0c-06-63-f8' ###

Target[192.168.20.2_2]: 2:gl@192.168.20.2:
SetEnv[192.168.20.2_2]: MRTG_INT_IP="192.168.20.2" MRTG_INT_DESCR="eth0"
MaxBytes[192.168.20.2_2]: 1250000
Title[192.168.20.2_2]: Traffic Analysis for SQUID PROXY -- LAN going to Mikrotik Proxy Interface
PageTop[192.168.20.2_2]: <h1>Traffic Analysis for SQUID PROXY -- LAN going to Mikrotik Proxy Interface</h1>
<div id="sysdetails">
<table>
<tr>
<td>System:</td>
<td>SQUID proxy LAN</td>
</tr>
<tr>
<td>Maintainer:</td>
<td>aacable@hotmail.com</td>
</tr>
<tr>
</table>
</div>


### Interface 3 >> Descr: 'eth1' | Name: 'eth1' | Ip: '111.111.111.111' | Eth: '00-07-e9-1f-e2-61' ###

Target[192.168.20.2_3]: 3:gl@192.168.20.2:
SetEnv[192.168.20.2_3]: MRTG_INT_IP="111.111.111.111" MRTG_INT_DESCR="eth1"
MaxBytes[192.168.20.2_3]: 1250000
Title[192.168.20.2_3]: Traffic Analysis for SQUID PROXY -- WAN Connected With Cyber Router
PageTop[192.168.20.2_3]: <h1>Traffic Analysis for SQUID PROXY -- WAN Connected With Cyber Router</h1>
<div id="sysdetails">
<table>
<tr>
<td>System:</td>
<td>SQUID proxy WAN</td>
</tr>
<tr>
<td>Maintainer:</td>
<td>aacable@hotmail.com</td>
</tr>
</table>
</div>


#LoadMIBs: /usr/share/snmp/mibs/UCD-SNMP-MIB.txt
Target[proxycpu]: .1.3.6.1.2.1.25.3.3.1.2.769&.1.3.6.1.2.1.25.3.3.1.2.768:gl@192.168.20.2
RouterUptime[proxycpu]: gl@192.168.20.2
MaxBytes[proxycpu]: 100
Title[proxycpu]: PROXY SERVER CPU Load
PageTop[proxycpu]: <h1>PROXY SERVER Active CPU Load %</h1>
Colours[proxycpu]: R#ff4f27,Y#FFFF00,,R#ff4f27,Y#FFFF00
Unscaled[proxycpu]: ymwd
ShortLegend[proxycpu]: %
YLegend[proxycpu]: CPU Utilization
Legend1[proxycpu]: PROXY SERVER Active CPU in % (Load)
Legend2[proxycpu]:
Legend3[proxycpu]:
Legend4[proxycpu]:
LegendI[proxycpu]: Active
LegendO[proxycpu]:
Options[proxycpu]: growright, nopercent, pngdate

Target[cacheRequestHitRatio]: .1.3.6.1.4.1.3495.1.3.2.2.1.9.5&.1.3.6.1.4.1.3495.1.3.2.2.1.9.60:gl@192.168.20.2:3401
MaxBytes[cacheRequestHitRatio]: 100
AbsMax[cacheRequestHitRatio]: 100
Title[cacheRequestHitRatio]: Request Hit Ratio @ GLASSLINE PROXY SERVER
Options[cacheRequestHitRatio]: absolute, gauge, noinfo, growright, nopercent
Unscaled[cacheRequestHitRatio]: dwmy
PageTop[cacheRequestHitRatio]: <h1>Request Hit Ratio @ GLASSLINE PROXY SERVER</h1>
YLegend[cacheRequestHitRatio]: %
ShortLegend[cacheRequestHitRatio]: %
LegendI[cacheRequestHitRatio]: Request Hit Ratio (5min)&nbsp;
LegendO[cacheRequestHitRatio]: Request Hit Ratio (60min)&nbsp;
Legend1[cacheRequestHitRatio]: Request Hit Ratio
Legend2[cacheRequestHitRatio]: Request Hit Ratio

Target[cacheRequestByteRatio]: .1.3.6.1.4.1.3495.1.3.2.2.1.10.5&.1.3.6.1.4.1.3495.1.3.2.2.1.10.60:gl@192.168.20.2:3401
MaxBytes[cacheRequestByteRatio]: 100
AbsMax[cacheRequestByteRatio]: 100
Title[cacheRequestByteRatio]: Byte Hit Ratio @ GLASSLINE PROXY SERVER
Options[cacheRequestByteRatio]: absolute, gauge, noinfo, growright, nopercent
Unscaled[cacheRequestByteRatio]: dwmy
PageTop[cacheRequestByteRatio]: <h1>Byte Hit Ratio @ GLASSLINE PROXY SERVER</h1>
YLegend[cacheRequestByteRatio]: %
ShortLegend[cacheRequestByteRatio]:%
LegendI[cacheRequestByteRatio]: Byte Hit Ratio (5min)&nbsp;
LegendO[cacheRequestByteRatio]: Byte Hit Ratio (60min)&nbsp;
Legend1[cacheRequestByteRatio]: Byte Hit Ratio
Legend2[cacheRequestByteRatio]: Byte Hit Ratio


# PROXY Memory Monitoring (Total Versus Available Memory in KB)
Target[proxy.memory]: .1.3.6.1.4.1.2021.4.6.0&.1.3.6.1.4.1.2021.4.5.0:gl@192.168.20.2 * 1000
Title[proxy.memory]: SQUID PROXY Server Free Memory in MBytes
PageTop[proxy.memory]: <H1>SQUID PROXY Server Free Memory in Bytes</H1>
MaxBytes[proxy.memory]: 100000000000000
ShortLegend[proxy.memory]: B
YLegend[proxy.memory]: MB
LegendI[proxy.memory]: Free
LegendO[proxy.memory]: Total
Legend1[proxy.memory]: Free memory
Legend2[proxy.memory]: SQUID PROXY Server Total memory
Options[proxy.memory]: gauge,growright,nopercent
kMG[proxy.memory]: k,M,G,T,P,X

# PROXY Memory Monitoring (Percentage usage)
Title[proxy.mempercent]: SQUID PROXY Server Percentage Memory Free in (%)
PageTop[proxy.mempercent]: <H1>SQUID PROXY Server Percentage Free Memory</H1>
Target[proxy.mempercent]: ( .1.3.6.1.4.1.2021.4.6.0&.1.3.6.1.4.1.2021.4.6.0:gl@192.168.20.2 ) * 100 / ( .1.3.6.1.4.1.2021.4.5.0&.1.3.6.1.4.1.2021.4.5.0:gl@192.168.20.2 )
options[proxy.mempercent]: growright, gauge, nopercent, integer
Unscaled[proxy.mempercent]: ymwd
MaxBytes[proxy.mempercent]: 100
YLegend[proxy.mempercent]: Memory %
ShortLegend[proxy.mempercent]: Percent
LegendI[proxy.mempercent]: Free
LegendO[proxy.mempercent]:
Legend1[proxy.mempercent]: SQUID PROXY Server Percentage Free Memory
Legend2[proxy.mempercent]:

### SQUID PROXY Server Harddisk DRIVE Utilization ###
Target[proxy.hdd1]: .1.3.6.1.2.1.25.2.3.1.6.31&.1.3.6.1.2.1.25.2.3.1.6.31:gl@192.168.20.2 / .1.3.6.1.2.1.25.2.3.1.5.31&.1.3.6.1.2.1.25.2.3.1.5.31:gl@192.168.20.2 * 100
Options[proxy.hdd1]: growright, gauge, integer, noo
MaxBytes[proxy.hdd1]: 100
LegendI[proxy.hdd1]: Total Partition Used
LegendO[proxy.hdd1]:
Legend1[proxy.hdd1]: Total Partition Used
Legend2[proxy.hdd1]:
Title[proxy.hdd1]: SQUID PROXY Server System Harddisk-1 DRIVE Utilization
PageTop[proxy.hdd1]: <h1>SQUID PROXY Server System Harddisk-1 DRIVE Utilization</h1>
Unscaled[proxy.hdd1]: ymwd
ShortLegend[proxy.hdd1]: %
YLegend[proxy.hdd1]: % Disk Used

### SQUID PROXY Server CACHE 500 GB Harddisk DRIVE Utilization ###
Target[proxy.hdd2]: .1.3.6.1.2.1.25.2.3.1.6.33&.1.3.6.1.2.1.25.2.3.1.6.33:gl@192.168.20.2 / .1.3.6.1.2.1.25.2.3.1.5.33&.1.3.6.1.2.1.25.2.3.1.5.33:gl@192.168.20.2 * 100
Options[proxy.hdd2]: growright, gauge, integer, noo
MaxBytes[proxy.hdd2]: 100
LegendI[proxy.hdd2]: Total Partition Used
LegendO[proxy.hdd2]:
Legend1[proxy.hdd2]: Total Partition Used
Legend2[proxy.hdd2]:
Title[proxy.hdd2]: SQUID PROXY Server CACHE 500 GB HDD Utilization
PageTop[proxy.hdd2]: <h1>SQUID PROXY Server CACHE 500 GB HDD Utilization</h1>
Unscaled[proxy.hdd2]: ymwd
ShortLegend[proxy.hdd2]: %
YLegend[proxy.hdd2]: % Disk Used
<pre>

### rm.cfg
### Interface 2 >> Descr: 'eth0' | Name: 'eth0' | Ip: '10.10.0.2' | Eth: '00-07-e9-0f-14-3e' ###

Target[10.10.0.2_2]: 2:gl@10.10.0.2:
SetEnv[10.10.0.2_2]: MRTG_INT_IP="10.10.0.2" MRTG_INT_DESCR="eth0"
MaxBytes[10.10.0.2_2]: 125000000
Title[10.10.0.2_2]: Traffic Analysis for RADIUS SERVER LAN
PageTop[10.10.0.2_2]: <h1>Traffic Analysis for  RADIUS SERVER LAN</h1>
        <div id="sysdetails">
            <table>
                <tr>
                    <td>System:</td>
                    <td>RADIUS SERVER</td>
                </tr>
                <tr>
                    <td>Maintainer:</td>
                    <td>aacable@hotmail.com</td>
                </tr>
                <tr>
                    <td>Description:</td>
                    <td>RADIUS SERVER LAN</td>
                </tr>
            </table>
        </div>


### Interface 3 >> Descr: 'eth1' | Name: 'eth1' | Ip: '111.111.111.111' | Eth: '00-14-22-2e-6e-fe' ###

Target[10.10.0.2_3]: 3:gl@10.10.0.2:
SetEnv[10.10.0.2_3]: MRTG_INT_IP="111.111.111.111" MRTG_INT_DESCR="eth1"
MaxBytes[10.10.0.2_3]: 125000000
Title[10.10.0.2_3]: Traffic Analysis for RADIUS SERVER WAN
PageTop[10.10.0.2_3]: <h1>Traffic Analysis for RADIUS SERVER WAN</h1>
        <div id="sysdetails">
            <table>
                <tr>
                    <td>System:</td>
                    <td>RADIUS SERVER WAN</td>
                </tr>
                <tr>
                    <td>Maintainer:</td>
                    <td>aacable@hotmail.com</td>
                </tr>
            </table>
        </div>


LoadMIBs: /usr/share/snmp/mibs/UCD-SNMP-MIB.txt
Target[Radius.cpu]:ssCpuRawUser.0&ssCpuRawUser.0:gl@10.10.0.2+ssCpuRawSystem.0&ssCpuRawSystem.0:gl@10.10.0.2+ssCpuRawNice.0&ssCpuRawNice.0:gl@10.10.0.2
RouterUptime[Radius.cpu]: gl@10.10.0.2
MaxBytes[Radius.cpu]: 100
Title[Radius.cpu]: RADIUS/BILLING SERVER CPU Load
PageTop[Radius.cpu]: <h1>RADIUS/BILLING SERVER Active CPU Load %</h1>
Colours[Radius.cpu]: R#ff4f27,Y#FFFF00,,R#ff4f27,Y#FFFF00
Unscaled[Radius.cpu]: ymwd
ShortLegend[Radius.cpu]: %
YLegend[Radius.cpu]: CPU Utilization
Legend1[Radius.cpu]: RADIUS/BILLING SERVER Active CPU in % (Load)
Legend2[Radius.cpu]:
Legend3[Radius.cpu]:
Legend4[Radius.cpu]:
LegendI[Radius.cpu]: Active
LegendO[Radius.cpu]:
Options[Radius.cpu]: growright,nopercent

### RADIUS BILLING Server Harddisk DRIVE Utilization ###
Target[radius.hdd]: .1.3.6.1.2.1.25.2.3.1.6.31&.1.3.6.1.2.1.25.2.3.1.6.31:gl@10.10.0.2 / .1.3.6.1.2.1.25.2.3.1.5.31&.1.3.6.1.2.1.25.2.3.1.5.31:gl@10.10.0.2 * 100
Options[radius.hdd]: growright, gauge, integer, noo
MaxBytes[radius.hdd]: 100
LegendI[radius.hdd]: Total Partition Used
LegendO[radius.hdd]:
Legend1[radius.hdd]: Total Partition Used
Legend2[radius.hdd]:
Title[radius.hdd]: RADIUS BILLING Server Harddisk DRIVE Utilization
PageTop[radius.hdd]: <h1>RADIUS BILLING Server Harddisk DRIVE Utilization</h1>
Unscaled[radius.hdd]: ymwd
ShortLegend[radius.hdd]: %
YLegend[radius.hdd]: % Disk Used

### ping.cfg
# 10.10.0.1 MIKROTIK PPP SERVERPING GRAPH
Title[mikrotik.ping]: MIKROTIK PPP SERVER PING RTT / Pkt LOSS Report
PageTop[mikrotik.ping]: <H1>MIKROTIK PPP SERVER PING RTT / Pkt LOSS Report</H1>
Target[mikrotik.ping]: `/cfg/zping.sh 10.10.0.1`
Colours[mikrotik.ping]: R#f75712,G#04bf27,G#70ff53,R#70ff53
MaxBytes[mikrotik.ping]: 100
AbsMax[mikrotik.ping]: 100
Options[mikrotik.ping]: growright,nopercent,gauge
LegendI[mikrotik.ping]: Pkt LOSS
LegendO[mikrotik.ping]: Active Round Trip Time
YLegend[mikrotik.ping]: RTT
Legend1[mikrotik.ping]: Pkt LOSS
Legend2[mikrotik.ping]: Active RTT

# 10.0.0.1 MIKROTIK HOTSPOT+DHCP+DNS PING GRAPH
Title[mthotspot.ping]: MIKROTIK HOTSPOT+DHCP+DNS PING RTT / Pkt LOSS Report
PageTop[mthotspot.ping]: <H1>MIKROTIK HOTSPOT+DHCP+DNS PING RTT / Pkt LOSS Report</H1>
Target[mthotspot.ping]: `/cfg/zping.sh 10.0.0.1`
Colours[mthotspot.ping]: R#f75712,G#04bf27,G#70ff53,R#70ff53
MaxBytes[mthotspot.ping]: 100
AbsMax[mthotspot.ping]: 100
Options[mthotspot.ping]: growright,nopercent,gauge
LegendI[mthotspot.ping]: Pkt LOSS
LegendO[mthotspot.ping]: Active Round Trip Time
YLegend[mthotspot.ping]: RTT
Legend1[mthotspot.ping]: Pkt LOSS
Legend2[mthotspot.ping]: Active RTT

# 10.10.0.2 RADIUS SERVER PING GRAPH
Title[radius.ping]: RADIUS BILLING SERVER PING RTT / Pkt LOSS Report
PageTop[radius.ping]: <H1>RADIUS BILLING SERVER PING RTT / Pkt LOSS Report</H1>
Target[radius.ping]: `/cfg/zping.sh 10.10.0.2`
Colours[radius.ping]: R#f75712,G#04bf27,G#70ff53,R#70ff53
MaxBytes[radius.ping]: 100
AbsMax[radius.ping]: 100
Options[radius.ping]: growright,nopercent,gauge
LegendI[radius.ping]: Pkt LOSS
LegendO[radius.ping]: Active Round Trip Time
YLegend[radius.ping]: RTT
Legend1[radius.ping]: Pkt LOSS
Legend2[radius.ping]: Active RTT

# 192.168.20.2 PROXY SERVER PING GRAPH
Title[proxy.ping]: PROXY SERVER PING RTT / Pkt LOSS Report
PageTop[proxy.ping]: <H1>PROXY SERVER PING RTT / Pkt LOSS Report</H1>
Target[proxy.ping]: `/cfg/zping.sh 192.168.20.2`
Colours[proxy.ping]: R#f75712,G#04bf27,G#70ff53,R#70ff53
MaxBytes[proxy.ping]: 100
AbsMax[proxy.ping]: 100
Options[proxy.ping]: growright,nopercent,gauge
LegendI[proxy.ping]: Pkt LOSS
LegendO[proxy.ping]: Active Round Trip Time
YLegend[proxy.ping]: RTT
Legend1[proxy.ping]: Pkt LOSS
Legend2[proxy.ping]: Active RTT

# 111.111.111.111 CYBER.NET Router PING GRAPH
Title[cyber.ping]: CYBER.NET Router PING RTT / Pkt LOSS Report
PageTop[cyber.ping]: <H1>CYBER.NET Router PING RTT / Pkt LOSS Report</H1>
Target[cyber.ping]: `/cfg/zping.sh 111.111.111.111`
Colours[cyber.ping]: R#f75712,G#04bf27,G#70ff53,R#70ff53
MaxBytes[cyber.ping]: 100
AbsMax[cyber.ping]: 100
Options[cyber.ping]: growright,nopercent,gauge
LegendI[cyber.ping]: Pkt LOSS
LegendO[cyber.ping]: Active Round Trip Time
YLegend[cyber.ping]: RTT
Legend1[cyber.ping]: Pkt LOSS
Legend2[cyber.ping]: Active RTT

# Google PING GRAPH
Title[google.ping]: GOOGLE.COM PING RTT / Pkt LOSS Report
PageTop[google.ping]: <H1>GOOGLE.COM PING RTT / Pkt LOSS Report</H1>
Target[google.ping]: `/cfg/norping.sh google.com`
Colours[google.ping]: R#f75712,G#04bf27,G#70ff53,R#70ff53
MaxBytes[google.ping]: 1000
AbsMax[google.ping]: 1000
Options[google.ping]: growright,nopercent,gauge
LegendI[google.ping]: Pkt LOSS
LegendO[google.ping]: Active Round Trip Time
YLegend[google.ping]: RTT
Legend1[google.ping]: Pkt LOSS
Legend2[google.ping]: Active RTT

### norping.sh

#!/bin/sh
PING="/bin/ping"
ADDR="$1"
DATA=`$PING -c2 $ADDR -q `
LOSS=`echo $DATA | awk '{print $18 }' | tr -d %`
# echo $DATA | awk -F/ '{print $5 }'
if [ $LOSS = 100 ];
then
echo 500
echo 0
else
echo 0
echo $DATA | awk -F/ '{print $6 }'
fi

### zping.sh</pre>
#!/bin/sh
PING="/bin/ping"
ADDR="$1"
DATA=`$PING -c2 -s50000 $ADDR -q `
LOSS=`echo $DATA | awk '{print $18 }' | tr -d %`
# echo $DATA | awk -F/ '{print $5 }'
if [ $LOSS = 100 ];
then
echo $LOSS
echo 0
else
echo 0
echo $DATA | awk -F/ '{print $6 }'
fi

September 16, 2011

Howto Create Counter Strike 1.6 Dedicated Server For LAN [with PSYCHOSTATS Ranking +MRTG System]

Filed under: General IT Related, Linux Related, Microsoft Related — Syed Jahanzaib / Pinochio~:) @ 2:18 PM


COUNTER STRIKE 1.6 DEDICATED SERVER INSTALLATION TUTORIAL [FOR Windows]

Counter-Strike is a first-person shooter GAME in which players join either the terrorist or counter-terrorist team (or become a spectator). Each team attempts to complete their mission objective and/or eliminate the opposing team. I created its first server back in 2006/2007 for my Ex-Cyber Cafe/Cable.Network system. Till date C.S is the most popular and famous networking Action Game for all ages.

I am writing this guide so anyone can create this server with very minimum knowledge required.

First you need to install Counter Strike 1.6 on any version of Windows . Either from CD or local installation file, Install it in

c:\cstrike

After installation, goto command prompt

cd C:\cstrike

Now use the following command to create CS dedicated server

hlds.exe -console -game cstrike -autoupdate +maxplayers 32 +map de_aztec +log on -nomaster +svlan 1

Or its better to create a new shortcut on your Desktop with the following code,

c:\cstrike\hlds.exe -console -game cstrike -autoupdate +maxplayers 32 +map de_aztec +log on -nomaster +svlan 1

This way you can always Start the server with this shortcut, or you can place it in your windows startup so it will automatically run when windows starts.

Now a Very basic counter strike dedicated server is ready to use. User can connect to this server and play game with each other.

Now We will add some extra functionalities in CS for enhancements and entertainment to give it fully professionaly look :)
For this purpose we have to add some MODs.

First we will ADMINMOd.

Goto

http://www.adminmod.org/index.php?go=downloads#am

and downlaod halflife-admin-2.50.60-win.zip

After downloading, extract it in any folder.

Run install_admin.vbs , click OK to continue,

Now it will ask you to specify a full path where CS is installed, in our case its c:\cstrike , so type the full path like this
c:\cstrike\hl.exe

It will ask Modification Choice, Select 1
It will then install ADMIN MOD.

Now if you will start Counter strike server, you will see few more lines indicating that [META] and [ADMIN] tags which will indicate that ADMINMOD is installed correctly. you can use the following  file to modify ADMINMOD settings at

C:\cstrike\cstrike\addons\adminmod\config\adminmod.cfg

For example you print your banner advertisement via this line
admin_connect_msg “Welcome to the AA Net CS Dedicated Server
and many other cool things you can do with this like map voting etc etc.

Always RESTART the C.S after adding any addon to it, so changes can take effect properly.

Now we will add another ADDON name AMXMOD. Installing AMX MOD X for counter strike is quite easy, Just follow these easy steps to install it.

A step bys tep GUI guide is available at

http://techgulf.blogspot.com/2011/03/how-to-install-amx-mod-x-for-counter.html 

Download AMXMOD 1.8.1 from

http://sourceforge.net/projects/amxmodx/files/AMX%20Mod%20X%20Full/1.8.1/amxmodx-installer-1.8.1.exe/download

The version of AMX MOD X which I am using in this guide is V1.8.1. Install AMX MOD X like you do  install any other app. Upon finish put check mark on “RUN AMX MOD X INSTALLER 1.8.1” and click on Finish.
Now a new window will apear,
Click on Next,
Accept the license agreement and click Next,
In Local Installation select “Select Mod directory” and click on Next,

Now it will ask you to choose directory, point it to c:\cstrike\cstrike\
and in Custom Game Addon, Select COUNTER-STRIKE from drop down menu, now click OK
It will then install the AMXMOD-X.

Now if you start the CS server, you will notice AMX MOD X tags in various lines.

Congrats You have install AMX Mod too :) You can edit it according to your requirments.
Its config files locations are.

C:\cstrike\cstrike\addons\AMX Mod X\files\cstrike\configs

****   PSYCHOSTATS INSTALLATION TUTORIAL [FOR Ubuntu/LINUX]   ****


What is PsychoStats ?

PsychoStats is open source software that creates comprehensive gaming statistics for players and clans. Allowing anyone with a webserver to have a website that shows detailed statistics and ranks for their single game server, or even multiple game servers! for examples Half.Life and Coutner.Strike

A sample ranking website can be viewed at

http://pro-css.co.il/stats/index.php?sort=skill&order=desc&limit=100&q=&start=71100

PsychoStats version 3.1 is very easy and quick to install on any system. It includes an online installation wizard that you run through your browser. Follow these simple steps and you’ll be up and running in few minutes.

Minimum Requirements

- PHP v4.3 (or 5.0+)
 - MySQL v4.1.11 (or v5.0+)
 - Perl v5.8
 - Required Perl modules
 - DBI
 - DBD::mysql

If you have fresh Linux, install PHP , Mysql and other using this article.
http://aacable.wordpress.com/2011/09/15/howto-install-phpbb-forum-on-ubuntu/

Step By Step Installation Process of Psychostats:

Login as root to your linux machine.
Create a new temp directory

mkdir /temp
 cd /temp

Now download Psychostats 3.1

wget http://www.psychostats.com/downloads/PsychoStats/psychostats3.1.tar.gz

Untar it.

tar zxvf psychostats3.1.tar.gz

Now create a new directory in your webserver name stats

mkdir /var/www/stats

Copy the psychostats Frontend Files to above folder so that you can start web base installation process. To do this, use the following command

cp -rf upload/* /var/www/stats/

Now its time to create MySQL Databas before start the installation.
Exectue the msyql program and create the following database.
mysql -u root -p123

create database stats;
 grant all privileges on stats.* to root@"localhost";
 flush privileges;
 exit

Now its time to Start the installation wizard process :) To start the installation point your browser to use a URL like this:

http://192.168.2.9/stats/install/index.php

Now follow the below images to go complete the installation.



Now Edit the /var/www/stats/config.cfg with the proper database settings that you have create above , so PsychoStats can connect to your database.

Sample :

root@linux:/var/www/stats# cat config.php

<?php
 $dbtype = 'mysql';
 $dbhost = 'localhost';
 $dbport = '';
 $dbname = 'stats';
 $dbuser = 'root';
 $dbpass = '123';
 $dbtblprefix =  'ps_';
 ?>

Now point your browser to http://192.168.2.9/stats and you will see Psychostats main screen.

Running PsychoStats

At this point you have run the ‘Install Wizard‘ from your browser and the database is fully setup and you can view your empty player stats online. Now it’s time to finally generate some stats!

First copy the stats.pl, stats.cfg and lib/ directory to the /var/www/stats from the folder where you untar the psychostats installation file. in this case it it /temp/

cd /temp
cp -R lib/ /var/www/stats/
cp stats.cfg /var/www/stats/
cp stats.pl /var/www/stats/ cd /var/www/stats

Now edit the stats.cfg and Enter the MYSQL DB details that we have entered before. Its necessary to run stats.pl correctly

Now execute the main stats.pl to generate your statistics.

./stats.pl -v

Note the added command line option ‘-v’. This enables ‘verbose’ mode and will cause some extra feedback while the stats are processing. This is recommended the first time you run it so you can see what is happening

Automatic Scheduling of PsychoStats

Now that you’ve run the stats.pl at least once and have confirmed that you are getting statistics on your website you’ll most likely want to setup PsychoStats to run automatically. PsychoStats does not have built in functionality to run itself. So in order to do this you need to add it in Linux CRON.

Run crontab and it will open up your default

crontab -e

Simply enter the following line

0,30 * * * * /var/www/stats/stats.pl

Save the file and exit. This will run stats.pl every 30 minutes

HOWTO CREATE MRTG STATS FOR FORCOUNTER STRIKE USER USAGE

As I am obsessed with MRTG, I have also found a way to graph Counter strike users. To graphs cs users, we will need a script name kkcron.pl ,
you can download it from http://kkrcon.sourceforge.net/after untar it , Now set the rcon password on your cs server by using this command on CS Server console.

rcon_password 12345678

Now test the kkcron.pl by following command to make sure its giving us the required data before going furhter.

/temp/kk/kkrcon.pl -a 192.168.2.5 -p 27015 -t new 12345678 status |grep players | cut -c12

(For some reason, you may have to adjust the cut -c12 integer to match yours, use some common sense in this matter) Result woule be some thing like below 17 (Which means 17 usesr are connected with your CS Server) Now everything is ready, use the Use the following cs.cfg example , that you can use to graph the C.S users with the help of kkcron.pl

#cs.cfg
# Total CS Users
Target[cs.users]: '/temp/kk/kkrcon.pl -a 192.168.2.5 -p 27015 -t new 12345678 status |grep players | cut -c12'
Title[cs.users]: CS Logged in Users
PageTop[cs.users]: <H1> CS Logged in Users </H1>
MaxBytes[cs.users]: 300
Colours[cs.users]: B#8888ff,B#8888ff,B#5398ff,B#5398ff
Options[cs.users]: gauge,nopercent,noo,integer,growright
LegendI[cs.users]: CS Logged in Users
LegendO[cs.users]:
YLegend[cs.users]: CS Logged in Users
Legend1[cs.users]: CS Logged in Users
Legend2[cs.users]:
Unscaled[cs.users]: ymwd

Counter Strike MRTG Graphs / aacable@hotmail.com

Counter Strike MRTG Graphs / aacable@hotmail.com

~!~ ALL DONE ~!~

Congratulations, You’re all done. You should have a fully functional Counter Strike 1.6 Dedicated Server for LAN with PsychoStats User Ranking System with MRTG installation and all will automatically update themselves.

Regard’s
Syed Jahanzaib

September 11, 2011

Howto Add Internet Service Status Page for Local Users

Filed under: General IT Related, Mikrotik Related — Tags: , , — Syed Jahanzaib / Pinochio~:) @ 11:37 AM

If you want to provide users a internet service status page from where users can check the internet status whether its connected or not, you can do it in various ways. One simple was is to create a HTML page where it shows a net is UP from some external website, if the link is down, it will show you NET is DOWN status from your local web server. You can then link this page to your local web server, via hotspot advertisement, or you can also use it at main hotspot login page.

When link is UP, user will see the following status.


When link is DOWN , user will see the following status.


In your local web server (If using IIS its C:\inetpub\wwwroot\) Create a new html file and name it netstatus.html,
Now paste the following code it in.

<head>
 <meta name="description" content="NAE INTERNET STATUS INFO PAGE by SYED JAHANZAIB">
 <title>GLASSLINE (Pvt) Ltd. INTERNET SERVICE STATUS INFO PAGE by SYED JAHANZAIB</title>
 </head>

<center><img src='http://i53.tinypic.com/2wrozd2.gif'
 onerror="this.src='gl-netdown.gif'" / align="middle"><p>&nbsp;</p>
 </center>
 <p align="center">&nbsp;</p>
 <p align="center"><span style="text-decoration: overline">
 <strong>
 <font color="#008080" size="4"><br>
 ~!~ Press F5 to Refresh the Current
 Status ~!~<br>
 <br>
 </font>
 <font color="#FF0000" size="4">(You must be connected via dialer in
 order to view the Live internet status)</font></strong></span><p>&nbsp;</p>

For Net up stats, I uploaded the gl-netup.gif to external tinypic server. and for Net Down status, I copied the gl-netdown.gif file to local web server. You can modify this data according to your local scenario. I used this scenario in pppoe environment, you can modify it according to your need, for example, if you don’t have local web server, you can place the image in Mikrotik Hotspot Directory.

To implement this idea in a HOTSPOT environment, Please view the following link.

 http://wiki.mikrotik.com/wiki/Notify_your_customers_internet_is_down,_monitor_connectivity

September 6, 2011

PTCL 50 Mb VDSL Deployed :D

Filed under: General IT Related — Syed Jahanzaib / Pinochio~:) @ 8:14 PM

Today (06/09/2011), PTCL vDSL have been deployed at my previous  Network.
(I left this network in year 2008, for any updated information, please contact Mr Jahangir at email thestrangereyes@hotmail.com)

.
This is the first network in Karachi where 50Mb connection have been deployed :)
Alhamdollillah

Its working great so far. Following are screen-shots of its working. I did some downloads and was able to get 45mb-48Mb constant.

I am not uploading any speedtest.net type website result ,  because they are not a reliable source for testing, therefore I recommend you not to trust on these speed test type website.

Remember, Don’t assume that after getting 50Mb, you or your users will become SUPERMAN or SPIDERMAN :) , latency and other things will remain same, only the capacity of loading so many passengers at a time  in your BUS will increase, I hope you will understand.

Package Speed : 50Mb DOWN, 10 Mb UP

PTCL 50MB vDSL Performance Image-1 by Zaib

PTCL 50MB vDSL Performance Image-1 by Zaib



HG622 STATUS PAGE

aacable@hotmail.com

aacable@hotmail.com

Google Traceroute

Google Traceroute

HUAWEI HHG622 Modem Sepcifications:

# 4 Ethernet ports. It supports WiFi 802.11b/g/n with Internal WiFi antenna.

# Upload usually remains around 2-4 Mb. It touches 6-7 Mb on full load.

Price / Rates are as follows.

50 mbps VDSL unlimited charges per month

Package Price: Rs.20,000  (average 230 Us$ per month)

Note: Installation Charges are Rs.10,000 (inclusive of Modem Charges)

Older Posts »

Theme: Silver is the New Black. Blog at WordPress.com.

Follow

Get every new post delivered to your Inbox.

Join 250 other followers