Thursday, 6 January 2011

Editing access lists line by line on Cisco routers

If you're using number access lists there is a really easy way to edit the access lists line by line on your router without having to remove and add the whole access list each time. Note: This feature is not available on older versions of IOS.

Router#conf t
Router(config)#ip access-list ext

Now you are in access list editing mode. To get a quick look at your access lists:

Router(config-ext-nacl)#do show access-list

Output will look similar to the following:
10 permit tcp any host 192.168.1.1 established log
20 permit udp any host 192.168.1.1
30 permit ip host 10.10.10.10 host 192.168.250.250

Note the numbers next to each line for each access list. To remove one of the lines on your access list just type:

Router(config-ext-nacl)#no

You can also add a line to your access list. To insert a line between lines 20 and 30 above, just start your new line with 25 (or any other number between 20 and 30):

Router(config-ext-nacl)#25 permit udp any host 192.168.200.100

BT Business Broadband with Cisco 877 and first ping is dropped on Cisco 877 ADSL

I recently got BT Business Broadband via work for home office use and I'm currently using a Cisco 857 for the ADSL modem & router

The connection came with 5 useable public IPs which is really handy, however due to the weird way BT actually assign the IP addresses to the dialer interface, you can't just leave this on negotiate and expect it to get the IP address BT have assigned to the router. If you do you get a dynamic IP from BT which is a pain.

To work around this you need to create a loopback interface, e.g. loopback0, and configure this with your allocated IP range, e.g.:

interface loopback0
ip address 80.12.34.56 255.255.255.248

You then need to assign this loopback to the dialer interface:

interface dialer1
ip unnumbered loopback0

You also need to remember to NAT traffic using the IP address of the loopback0:

ip nat inside source list 10 interface loopback0 overload

That all seems to work pretty nicely however I did run into a problem where if I ping a public IP from the router itself or an attached client PC, the first ping is dropped. This is because the router is doing an ARP request on the public interface to try and find who has the public IP you are pinging, an while this is happening the first ping is dropped. To get round this you need to configure the following on the dialer interface:

no ip proxy-arp

This resolved my issue where the first packet was dropped when talking to any 'new' public IP. The issue also manifested itself as webpages taking a couple of extra seconds before the page started loading.

IP Phone (Mitel) drops traffic when the connected PC changes its network card speed

If a user is in a phone call on a Mitel 5220 handset and they reboot their PC (in this case a Lenovo desktop PC), the user experiences around 2 seconds of silence twice while the PC is booting - once just before the BIOS screen is displayed and once just before the Windows 7 logon screen is displayed.

This is caused by the PC changing the NIC speed during bootup from 100Mbps to 10Mbps, which in turn causes the Mitel 5220 handset to change its network speed from 100Mbps to 10Mbps, and during this change voice packets are dropped (the user experiences silence).

On the Lenovo PC in question this issue can be resolved by either setting 'Shutdown Wake-on-LAN' to disabled in the properties of the network card on the Advanced tab, or by changing the 'WOL & Shutdown Link Speed' setting to 100Mbps (default is 10Mbps).

You can demonstrate the same issue by connecting any PC with a 10/100 NIC to the back of the Mitel 5220 phone and within Windows manually setting the speed of the network card to 10Mb. Obviously you need to be in a phone call on the Mitel handset at the time to notice the 2 second silence.

Wednesday, 28 July 2010

Excel file size much larger than the contents

I recently had a weird problem with an Excel doc that jumped in size after making some changes and saving a new revision. It was a kit list/pricing spreadsheet I'd been working on for a while so couldn't pin down the exact action that caused it to increase in size.

In this instance I was using Excel 2007 and saving the doc as an Excel 97-2003 Workbook.

After some Googling I tried the following fixes, the last of which solved my problem:

Inspect the document
Prepare > Inspect Document > Inspect
This shows a list of hidden content including rows, columns and worksheets and if it find any, allows you to delete them.

Force everything on a sheet to be deleted
Press ctrl-a, right click anywhere in the selected worksheet and click 'Delete'
This was overkill for what I was trying to do as I needed to keep the content I could actually see, but it was really useful to go through a copy of my dodgy spreadsheet and clear every tab and once done the file was still huge, so there was still work to do...

Manually delete components in the file
Warning, this may destroy your data so make sure you have a backup of the file first!!!
Save the spreadsheet as an .xslx file. Rename the extension to .zip. Open the file in WinZIP. Look for an xl\externalLinks folder and delete any files in this. Close WinZIP and rename file back to .xlsx, open in Excel and allow Excel to repair the file.
This is great as it shows you exactly where bulky data is stored in the file. In my case WinZIP showed the xl\externalLinks folder contained some bulky data. I dropped one of the .XML files into Notepad and could immediately see that it the entire contents of a Cisco pricelist I'd pasted some content from! I would have only pasted a couple lines from this other spreadsheet so Excel must have brought the whole lot across for an unknown reason but decided not to acknowledge this anywhere. Once I delete the files in the xl\externalLinks folder and saved it as per my instructions above my file was back to a sensible size.


Saturday, 29 May 2010

Changing the IP address in CUCM 7.02

Follow the steps below to change the IP address of the Cisco Unified Call Manager Publisher server.


Environment Overview


CUCM version 7.02 running as a virtual machine on VMware Server 2.0. The virtual machine was moved to a different VMware server and subnet.



1) On the new VMware host server in VMware Infrastructure Web Access, go to the settings for the CUCM guest and change the network adapter connection to vmnet1 (hostonly)



2) On the VMware host server change the IP address and subnet of the vmnet1 network adapter to an IP address in the same subnet as the existing IP address of the CUCM. You don't need to set a default gateway on the network adapter.



3) Log into the CUCM via the CLI (I used the VMware Console to access the CLI) and change the default gateway to the new default gateway you want to use using the following command:

set network gateway gateway_ipaddress










4) Log on to Cisco Unified CM Administration and under System > Server > your CUCM server, change the IP address to your new IP address and click save.
























5) Back on the CLI change the IP address using the following command

set network ip eth0 ipaddress subnetmask





























The CUCM should now reboot.




6) Back on the the VMware host server in WMware Infrastructure Web Access, go to the settings for the CUCM guest and change the network connection back to vmnet0 (bridged).




7) Once the CUCM has rebooted you should now be able to access it via the new IP address. You can check the IP address has change via the CLI using the following command:


show tech network hosts

Wednesday, 31 March 2010

My Other Lab Location

While sporadically building my home lab setup (which has been mainly for my own personal development) I've also been adding to a lab I have setup at my workplace. I've had this lab in place since around 2007 for testing LCS 2005, OCS 2007 and OCS 2007 R2 integration with Mitel, Avaya and Cisco PBXs.

Summary of what the lab has done/can do, by PBX manufacturer:


Mitel 3300

OCS 2007 and OCS 2007 R2 Remote Call Control via Mitel Live Business Gateway (Linux and Windows versions)

Exchange 2007 UM for Mitel handsets homed on the Mitel 3300


Cisco Unified Call Manager (CUCM)

CUCIMOC integration with MOC on OCS 2007 (CUCM 7.0.2)
Interesting blog entries for CUCIMOC:
http://blog.misthos.com/2009/07/cisco-cucimoc.html
http://blog.misthos.com/2009/08/cisco-cucimoc-features.html

Exchange 2007 UM for Cisco handsets homed on the Cisco CUCM (CUCM 6.1.5)
Microsoft guide to configuring CUCM for Exchange 2007 UM:
http://www.microsoft.com/downloads/details.aspx?FamilyID=68B43D3C-7C84-4C2F-BFD7-98754970D70E&displaylang=en&displaylang=en


Avaya Communications Manager

OCS 2007 Remote Call Control via Avaya AES server
Avaya Softphone integration with MOC on OCS 2007

OCS 2007 R2 Documentation and Setup

Since the last post I have finished off installing OCS 2007 R2 and Exchange 2007 on the home lab setup and have been working on a lab environment elsewhere (see next post).

There isn't much point in going into too much detail on the OCS install as it is relatively straightforward AS LONG AS YOU FOLLOW THE DOCUMENTATION!


I've setup a number of LCS, OCS07 and OCS07 R2 implementations in the past and the one thing that is critical is to follow the step by step docs from Microsoft if you want a functional setup. If you attempt a Next, Next, Finish approach then it will only take up more time in the future as you have to fiddle around trying to fix things.

Anyway, preaching over, click this link for the Microsoft documentation pack for Office Communications Server 2007 R2, updated Dec 2009.

http://www.microsoft.com/downloads/details.aspx?familyid=E9F86F96-AA09-4DCA-9088-F64B4F01C703&displaylang=en

Communications_Server_2007_R2_Documentation.zip contains the whole doc pack in one zip file.