<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-2347327864900357747</id><updated>2010-08-30T05:48:28.576+01:00</updated><title type='text'>The Roving Network Engineer's blog..</title><subtitle type='html'>The thoughts and ramblings of a roving network engineer, as he goes from network to network, finding and fixing pain...</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://blog.olorin.co.uk/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2347327864900357747/posts/default?orderby=updated'/><link rel='alternate' type='text/html' href='http://blog.olorin.co.uk/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><link rel='next' type='application/atom+xml' href='http://www.blogger.com/feeds/2347327864900357747/posts/default?start-index=26&amp;max-results=25&amp;orderby=updated'/><author><name>Dan Hughes</name><uri>http://www.blogger.com/profile/02863235256629112871</uri><email>noreply@blogger.com</email></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>43</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-2347327864900357747.post-7739580825015719177</id><published>2010-07-28T21:03:00.000+01:00</published><updated>2010-07-28T21:03:54.324+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='cisco'/><category scheme='http://www.blogger.com/atom/ns#' term='ccna'/><category scheme='http://www.blogger.com/atom/ns#' term='eigrp'/><category scheme='http://www.blogger.com/atom/ns#' term='ccnp'/><category scheme='http://www.blogger.com/atom/ns#' term='feasible successor'/><title type='text'>EIGRP Feasible Successor routes</title><content type='html'>I always forget what these means in-between exams (I simply don't use EIGRP anywhere), but it is quite important to understand EIGRPs computation logic.&amp;nbsp;The logic is this - when looking at possible 'backup' routes to hold ready for use, it's important to avoid the possibility of considering a path which has come from a neighbor which is going to send the packet back to you in the end - i.e. a routing loop. Without the 'global view' of link state protocols - you need to have a way to determine what inbound advertisements are 'safe' and which ones are 'maybe not safe'.&lt;br /&gt;&lt;br /&gt;If you've a backup route which you know is safe, you can switch over really quickly in the event of the loss of your primary link. If you don't - you want to take a little time and be sure that you're not going to introduce a loop. You need to wait for the network to re-converge. If you've your head around that - the rest is just terminology.&lt;br /&gt;&lt;br /&gt;First key term is 'Feasible Distance'. This is basically the metric of the current 'best' route (i.e. the live one), including any metric elements that were added by the local router. The 'whole cost' if you like. Let's make up a number and say it's 10,000. &amp;nbsp; 'Reported Distance' of an inbound route advertisement is the metric that the neighbor is passing to us, before we add on any metric ourselves.&lt;br /&gt;&lt;br /&gt;There are two possibilities for the Reported Distance, it's either more or less than our current 'best' metric - the Feasible Distance. If it's more, say 20,000, then it's &lt;i&gt;possible&lt;/i&gt; that that neighbor is actually advertising our own advertisement back to us - i.e. a loop. Maybe it's not, but until the network has re-converged, we have to consider the possibility. &amp;nbsp;If the RD is less, then it is &lt;b&gt;not possible&lt;/b&gt; that it's going back via us. This cannot be a loop, and therefore it's safe to quickly switch to this link.&lt;br /&gt;&lt;br /&gt;Feasible Successors are quite simply an alternative path to the live route (the 'Successor'), which has a lower reported distance than the current feasible distance - i.e. backup routes which we know are not a loop. If a router looses it's main route, and has a feasible successor, it simply promotes it to the 'live' route, and sends out updates to it's neighbors to tell them the metric has changed. &lt;br /&gt;&lt;br /&gt;If it doesn't have a feasible successor, then the router has no quick backup path, marks the route as 'active' (a counter intuitive tern which means the router is actively trying to work out how to get to the route in question), and starts querying it's neighbors to see if any of them know an way to get to the destination. Either it'll get an answer back with a loop free route, which will be installed as the new successor (i.e live route), or it'll give up and remove the route from the routing table..&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2347327864900357747-7739580825015719177?l=blog.olorin.co.uk' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.olorin.co.uk/feeds/7739580825015719177/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=2347327864900357747&amp;postID=7739580825015719177&amp;isPopup=true' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2347327864900357747/posts/default/7739580825015719177'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2347327864900357747/posts/default/7739580825015719177'/><link rel='alternate' type='text/html' href='http://blog.olorin.co.uk/2010/07/eigrp-feasible-successor-routes.html' title='EIGRP Feasible Successor routes'/><author><name>Dan Hughes</name><uri>http://www.blogger.com/profile/02863235256629112871</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='15900047760785177687'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2347327864900357747.post-5520537083784933278</id><published>2010-07-28T17:20:00.000+01:00</published><updated>2010-07-28T17:20:14.301+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='cisco'/><category scheme='http://www.blogger.com/atom/ns#' term='ccna'/><category scheme='http://www.blogger.com/atom/ns#' term='eigrp'/><title type='text'>Why EIGRP hello and hold timers don't have to match</title><content type='html'>Lets take a simple topology. Two routers, R1 and R2, on a common LAN. Assume basic EIGRP is up. One morning you decide to start 'optimizing' the protocol by adjusting timers, but get half way through it and get bored and go for tea :&lt;br /&gt;&lt;br /&gt;(both)&lt;br /&gt;&lt;br /&gt;router eigrp 100&lt;br /&gt;&amp;nbsp;network 150.150.0.0&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;R1#sh run int f0/0&lt;br /&gt;!&lt;br /&gt;interface FastEthernet0/0&lt;br /&gt;&amp;nbsp;ip address 150.150.36.3 255.255.255.128&lt;br /&gt;!! default EIGRP timers of hello (5) and holdtime (15) apply&lt;br /&gt;!&lt;br /&gt;end&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;R2#sh run int f0/0&lt;br /&gt;!&lt;br /&gt;interface FastEthernet0/0&lt;br /&gt;&amp;nbsp;ip address 150.150.36.126 255.255.255.0&lt;br /&gt;&amp;nbsp;ip hello-interval eigrp 100 1&lt;br /&gt;&amp;nbsp;ip hold-time eigrp 100 3&lt;br /&gt;end&lt;br /&gt;&lt;br /&gt;R1's hellos are only going to be sent out every 5 seconds, which is longer than R2's hold time of 3 seconds, so it's going to break right? No, actually it isn't. In EIGRP, when a router exchanges hellos with a neighbor, it looks at the timers &lt;b&gt;in the inbound hello&lt;/b&gt;, and expects packets at that rate.&lt;br /&gt;&lt;br /&gt;So in the scenario above, R1 knows to expect packets every second from R2, and applies a hold time of 3 seconds, even though it's sending it's own hellos out ever 5 seconds. Vice versa, even though R2's interface is configured with a hold-time of only 3 seconds, it knows to expect hellos from R1 every 5, and to apply a hold time of 15.&lt;br /&gt;&lt;br /&gt;I don't know if this is a good thing, as it basically makes EIGRP very forgiving of bad configuration, but I've no doubt that if you look hard enough, you'll find neighbor relationships relying on this behavior. Fun eh!&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2347327864900357747-5520537083784933278?l=blog.olorin.co.uk' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.olorin.co.uk/feeds/5520537083784933278/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=2347327864900357747&amp;postID=5520537083784933278&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2347327864900357747/posts/default/5520537083784933278'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2347327864900357747/posts/default/5520537083784933278'/><link rel='alternate' type='text/html' href='http://blog.olorin.co.uk/2010/07/why-eigrp-hello-and-hold-timers-dont.html' title='Why EIGRP hello and hold timers don&apos;t have to match'/><author><name>Dan Hughes</name><uri>http://www.blogger.com/profile/02863235256629112871</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='15900047760785177687'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2347327864900357747.post-4648155021361311273</id><published>2010-07-26T10:00:00.001+01:00</published><updated>2010-07-26T11:48:41.758+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='cisco'/><category scheme='http://www.blogger.com/atom/ns#' term='cost effective neworking'/><category scheme='http://www.blogger.com/atom/ns#' term='resilience'/><category scheme='http://www.blogger.com/atom/ns#' term='redundancy'/><category scheme='http://www.blogger.com/atom/ns#' term='datacentre design'/><title type='text'>How resilient does your DC network need to be?</title><content type='html'>We had a great conversation this weekend on &lt;a href="http://packetpushers.net/"&gt;packetpushers &lt;/a&gt;about how resilient you should make your datacentre switching. The guts of the conversation is on your core chassis devices, do you need to put in multiple supervisors/PSUs/ETC. &lt;br /&gt;&lt;br /&gt;Now, the real answer to these kinds of questions is always a varient on 'it depends on the requirements'.&lt;br /&gt;&lt;a href="http://packetattack.wordpress.com/"&gt;Ethan Banks&lt;/a&gt; was making the point that there are networks where a two second loss is a big deal. I guess we're primarily talking about trading houses/banks/call centres etc here, and in those places it's a fair point.&lt;br /&gt;&lt;br /&gt;For pretty much anyone else, the first question I'd ask is 'How much money is it worth to avoid a 3 second loss once a year'. Why those numbers? Assuming you're doing something vaguely sensible with Rapid Spanning tree and/or your L3 routing protocol of choice, you should expect an unplanned device loss to be recovered in that time. Why once a year? If you're losing&amp;nbsp; devices more often than that, you probably have an environmental issue you need to fix first.&lt;br /&gt;&lt;br /&gt;So what's the significance of the 3 second drop? Well, of course you need to test in your environment, but you should expect TCP connections to stay up (or you can tweak your TCP stacks to ensure they will). SMB transfers may drop, VOIP calls will drop. Storage calls will fail. These things should all recover*. I'm sure you can think of a few more things.&lt;br /&gt;&lt;br /&gt;* Yeah I know the VOIP call won't 'recover', but you  can call them back. As long as it's not a regular even, this is usually an acceptable risk. As for the rest, test your applications, and see  what will recover, and what dies horribly. The 'dies horribly' list is a  set of applications which are the drivers for 'hitless redundancy'.  Make sure it's made clear to the business that these are the apps which  are responsible for the extra cost. &amp;nbsp; &lt;br /&gt;So once we have our understanding of consequence, we can take our techie hat off, and we need to start thinking like a business person. What is the consequence of the occasional drop worth to the business. Throw it out to your internal customers - probably some of them will jump up and down and tell you they can't tolerate any loss - it must be up all the time. That's fine. Make them come up with a number - what will this failure scenario cost. Compare this cost to the price from Cisco/Juniper/Whoever for the extra kit, and this is your business case, one way or the other.&lt;br /&gt;&lt;br /&gt;One useful trick (and it depends on how internal financing works in your company) is you budget to build your network to a certain 'reasonable' level of resiliency - and if any particular application owner/customer needs more, then they pay for the extra. It's not just about being a smartypants, but making people understand that these extra uptime percentage points get expensive. There is a consequence to the company's finances for demanding them. Often, it might turn out to be &lt;b&gt;a lot&lt;/b&gt; cheaper to re-engineer the application to learn to recover from a network failure.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2347327864900357747-4648155021361311273?l=blog.olorin.co.uk' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.olorin.co.uk/feeds/4648155021361311273/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=2347327864900357747&amp;postID=4648155021361311273&amp;isPopup=true' title='5 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2347327864900357747/posts/default/4648155021361311273'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2347327864900357747/posts/default/4648155021361311273'/><link rel='alternate' type='text/html' href='http://blog.olorin.co.uk/2010/07/now-resilient-does-your-dc-network-need.html' title='How resilient does your DC network need to be?'/><author><name>Dan Hughes</name><uri>http://www.blogger.com/profile/02863235256629112871</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='15900047760785177687'/></author><thr:total>5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2347327864900357747.post-2202611632422147674</id><published>2010-07-19T20:45:00.000+01:00</published><updated>2010-07-19T22:10:14.406+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='cisco'/><category scheme='http://www.blogger.com/atom/ns#' term='ISP'/><category scheme='http://www.blogger.com/atom/ns#' term='net neutrality'/><title type='text'>The problem with net neutrality..</title><content type='html'>I've always considered myself in the 'yaa boo ISP opposition to net neutrality is bad' camp, but over the weekend I was speaking to a friend of mine who is a network engineer at a medium sized UK ISP, who all but hissed when I mentioned it.  &lt;br /&gt;&lt;br /&gt;Why all the fuss? The best way to look at it (and the thing that ISP's are worried about) is not so much the stuff that people are doing today, but the changes that are on the horizon to how media gets delivered. Do any of you remember the old days, when kids were respectful, policemen kept order, the summers where always hot, and music and books where things you bought in shops? God knows how people got them into their kindles, but hey. &lt;br /&gt;&lt;br /&gt;To the ISP's these things are not huge deals. An eBook is a few hundred kilobytes, an album is say 18-25Mb. And the key point I guess is that they are one off transactions. A typical user is only going to download them occasionally. &lt;br /&gt;&lt;br /&gt;TV and video are next. At the moment we go to the video store, or maybe occasionally rent videos from iTunes or whoever, but primarily we still watch live TV via traditional methods. The ISP business in the UK got a real wakeup call when the BBC launched their iPlayer application, which allowed people to ignore shedules, and watch their tv whenever they wanted. Unlike PVR type systems, the content is delivered in demand from the cloud, rather than the user storing the media locally.&lt;br /&gt;&lt;br /&gt;This hurt their networks really badly. But what really scares them is the question of what happens when this becomes the mainstream. Fast forward to a few weeks ago when google announce Google TV. A set top box which allows people to scour the Internet for tv content (no doubt with the help of YouTube acting as a CDN). Moderatly scary. Then the fact that they've tied up with Sony to build it into their TVs.. Scary. Also the story around the campfire is that Sony can hit the switch on however many million PS3's are out there and turn them into into GoogleTV set top boxes. Oh and Microsoft can do something similar with the Xbox. Terrifying. &lt;br /&gt;&lt;br /&gt;The Internet as its designed today (a unicast based, far away datacentre centric network) simply couldn't cope. It would die horribly. It simply can't do that huge sustained volume. And this is why they want to be able to limit it. They have to.&lt;br /&gt;&lt;br /&gt;Now in reality, this is a when not if scenario. So in reality, someone (IETF?) needs to start planning for this, because it's perfectly possible to do, it just takes a different design than we have right now for how traffic gets for A to B across the Internet. Unlike when I say 'someone should do it' at work, i doubt it'll end up being me. However I do suspect CDNs will become extremely important.&lt;br /&gt;&lt;br /&gt;The main conclusion I came to over the weekend was to buy some Akami stock! I know this will end up with big nasty corporate telephone companies controlling what we get access to, rather than the current system where Rupert Murdoch does, but hey, whoever said speech was free right... &lt;br /&gt;&lt;p class='blogpress_location'&gt;Location:&lt;a href='http://maps.google.com/maps?q=Dublin,%20Ireland%4053.375509%2C-6.374338&amp;z=10'&gt;Dublin, Ireland&lt;/a&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2347327864900357747-2202611632422147674?l=blog.olorin.co.uk' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.olorin.co.uk/feeds/2202611632422147674/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=2347327864900357747&amp;postID=2202611632422147674&amp;isPopup=true' title='7 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2347327864900357747/posts/default/2202611632422147674'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2347327864900357747/posts/default/2202611632422147674'/><link rel='alternate' type='text/html' href='http://blog.olorin.co.uk/2010/07/problem-with-net-neutrality.html' title='The problem with net neutrality..'/><author><name>Dan Hughes</name><uri>http://www.blogger.com/profile/02863235256629112871</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='15900047760785177687'/></author><thr:total>7</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2347327864900357747.post-305867395200763432</id><published>2010-05-07T20:54:00.001+01:00</published><updated>2010-07-10T13:51:18.501+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='acs replication cisco'/><title type='text'>Why ACS replication fails through a firewall..</title><content type='html'>Ever tried putting a Cisco ACS server on each side of an ASA, and getting them to replicate? By default it doesn't work, and it's bugged me for ages as to why. I finally discovered why today. It's one of those 'once it's explained it's flippin obvious' ones..&lt;br /&gt;&lt;br /&gt;I am assuming of course that NAT and ACL entries are correct!&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;Why you get a problem&lt;/h2&gt;&lt;br /&gt;&lt;br /&gt;ACS uses port TCP2000 for replication traffic. Anyone think what else uses TCP2000? SCCP (Skinny) of course! And guess what is a default inspection on the ASA :&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;policy-map global_policy&lt;br /&gt;&amp;nbsp;class inspection_default&lt;br /&gt;&amp;nbsp;&amp;nbsp;inspect dns migrated_dns_map_1&lt;br /&gt;&amp;nbsp;&amp;nbsp;inspect ftp&lt;br /&gt;&amp;nbsp;&amp;nbsp;inspect h323 h225&lt;br /&gt;&amp;nbsp;&amp;nbsp;inspect h323 ras&lt;br /&gt;&amp;nbsp;&amp;nbsp;inspect http&lt;br /&gt;&amp;nbsp;&amp;nbsp;inspect netbios&lt;br /&gt;&amp;nbsp;&amp;nbsp;inspect rsh&lt;br /&gt;&amp;nbsp;&amp;nbsp;inspect rtsp&lt;br /&gt;&lt;b&gt;&amp;nbsp;&amp;nbsp;inspect skinny &amp;nbsp;&lt;/b&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;inspect esmtp&lt;br /&gt;&amp;nbsp;&amp;nbsp;inspect sqlnet&lt;br /&gt;&amp;nbsp;&amp;nbsp;inspect sunrpc&lt;br /&gt;&amp;nbsp;&amp;nbsp;inspect tftp&lt;br /&gt;&amp;nbsp;&amp;nbsp;inspect sip &lt;br /&gt;&amp;nbsp;&amp;nbsp;inspect xdmcp&lt;br /&gt;!&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&lt;/div&gt;&lt;h2&gt;How to resolve the issue&lt;/h2&gt;&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;By default, the ASA will inspect the traffic as if it's SCCP, will see that it's not valid SCCP traffic, and quietly drop it. You can stop this behaviour in two ways:&lt;br /&gt;&lt;br /&gt;1) Disable the inspection completely if you're not using Cisco IPT.&lt;br /&gt;2) Remove it from the default inspection list, and set up a separate class to match the traffic you DO want to inspect for SCCP, and inspect only it..&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;Example&lt;/h2&gt;&lt;br /&gt;&lt;br /&gt;Lets say two ACS servers, 1.1.1.1 and 2.2.2.2 need to replicate, and you do use SCCP on the network :&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;access-list NOT-ACS extended deny tcp host 1.1.1.1 host 2.2.2.2&lt;br /&gt;access-list NOT-ACS extended permit ip any any&lt;br /&gt;!&lt;br /&gt;&lt;br /&gt;class-map &amp;nbsp;NOT-ACS&lt;br /&gt;&amp;nbsp;match access-list &amp;nbsp;NOT-ACS&lt;br /&gt;!&lt;br /&gt;&lt;br /&gt;policy-map global_policy&lt;br /&gt;&amp;nbsp;class inspection_default&lt;br /&gt;&amp;nbsp;&amp;nbsp;inspect dns migrated_dns_map_1&lt;br /&gt;&amp;nbsp;&amp;nbsp;inspect ftp&lt;br /&gt;&amp;nbsp;&amp;nbsp;inspect h323 h225&lt;br /&gt;&amp;nbsp;&amp;nbsp;inspect h323 ras&lt;br /&gt;&amp;nbsp;&amp;nbsp;inspect http&lt;br /&gt;&amp;nbsp;&amp;nbsp;inspect netbios&lt;br /&gt;&amp;nbsp;&amp;nbsp;inspect rsh&lt;br /&gt;&amp;nbsp;&amp;nbsp;inspect rtsp&lt;br /&gt;&amp;nbsp;&amp;nbsp;inspect esmtp&lt;br /&gt;&amp;nbsp;&amp;nbsp;inspect sqlnet&lt;br /&gt;&amp;nbsp;&amp;nbsp;inspect sunrpc&lt;br /&gt;&amp;nbsp;&amp;nbsp;inspect tftp&lt;br /&gt;&amp;nbsp;&amp;nbsp;inspect sip &lt;br /&gt;&amp;nbsp;&amp;nbsp;inspect xdmcp&lt;br /&gt;&amp;nbsp;class NOT-ACS&lt;br /&gt;&amp;nbsp;&amp;nbsp;inspect skinny&lt;br /&gt;!&lt;br /&gt;&lt;br /&gt;Your ACS devices will replicate, and your SCCP still gets inspected..&lt;br /&gt;&lt;br /&gt;Thanks to my old buddy Frank Gannon for spotting this one!&lt;br /&gt;&lt;br /&gt;(updated to correct config error spotted by Robert)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2347327864900357747-305867395200763432?l=blog.olorin.co.uk' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.olorin.co.uk/feeds/305867395200763432/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=2347327864900357747&amp;postID=305867395200763432&amp;isPopup=true' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2347327864900357747/posts/default/305867395200763432'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2347327864900357747/posts/default/305867395200763432'/><link rel='alternate' type='text/html' href='http://blog.olorin.co.uk/2010/05/why-acs-replication-fails-through.html' title='Why ACS replication fails through a firewall..'/><author><name>Dan Hughes</name><uri>http://www.blogger.com/profile/02863235256629112871</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='15900047760785177687'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2347327864900357747.post-7872203061971761646</id><published>2010-06-16T22:28:00.002+01:00</published><updated>2010-06-16T22:31:06.128+01:00</updated><title type='text'>Which is the worlds best firewall? Windows Firewall of course..</title><content type='html'>Over the years I've often been asked 'Which is the best firewall?' My answer is usually the same - it's the one you know best.. Customers often think I'm just being a smart arse, but I'm not. So I thought I'd lay out the argument here..&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;How do Companies buy firewalls?&lt;/h2&gt;&lt;br /&gt;There have been lots of religious wars over firewall types. Who can forget the proxy vs statefull inspection of the nineties and early noughies. Vendors still forward the whole 'ours is best because of feature X' arguments. &lt;br /&gt;&lt;br /&gt;As a result of these wars, many organisations now use a formulaic approach to vendor and product selection. You write down a list of the features you want, compare the products, and bingo, there is the selection. &lt;br /&gt;&lt;br /&gt;It sounds logical and sensible as a method, although you could argue that it's main purpose is to assist in the justification of why the purchase was made after the fact.. Most people (subconsciously maybe) tilt the requirements towards the product they actually want, and vendors have become expert in planting requirements into peoples heads. But still you can say 'No, we didn't buy from them because my brother is the salesman, it's because it's the only firewall to protect against Mosaic vulnerabilities'..&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;How well do we know our firewalls?&lt;/h2&gt;&lt;br /&gt;&lt;br /&gt;Firewalls are complex beasts, and while most people learn quickly enough how to make a policy change, or set up a simple NAT, regardless of brand. However really understanding how it's processing the packet, the order and types of checks that are going on, and how to troubleshoot each aspect of the inspection logic is a rarer thing. For example, I would say that I know the PIX/ASA firewalls pretty well. I can set up complex features and troubleshoot them well. However give me a checkpoint box, and I can do a lot, but quickly get lost on advanced troubleshooting tasks.&lt;br /&gt;&lt;br /&gt;This is hugely important, as the moment things start to go wrong with a firewall deployment, people quickly start to compromise their lofty security ideals to keep their traffic working. If we don't really fully understand exactly what that knob does, other than make the traffic work when we turn it off, we end up in a position where the firewall configuration is suboptimal - and we might not even know!&lt;br /&gt;&lt;br /&gt;That's not to say we can make every feature work on our firewall of choice, but we probably have the experience and product knowledge to understand the consequence of turning off a feature. If I'm working on an ASA, I'm pretty confident that I can stand over my work and say 'Yes, this will protect exactly what you've asked me to protect'. Do it with a product I don't know so well, and I'm not so sure how it will perform.&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;So which is best, Cisco ASA or XP firewall?&lt;/h2&gt;&lt;br /&gt;&lt;br /&gt;I tweeted about this recently, and someone sent me (in jest) a comment 'so XP firewall is as good as a pix then?'.. Well, this could be the logical conclusion of the argument. &lt;br /&gt;&lt;br /&gt;Let's say as an organisation you have a windows admin who is so good he can change the computer case colour by group policy, and is a passable cisco admin. A really good windows admin can close down windows so tight that you can be plugged into the same LAN as it and you will get nowhere (and no, I don't mean by powering it off).&lt;br /&gt;&lt;br /&gt;So what's the best use of his time? If he spends his time making windows bulletproof, using all the tools he knows, he will have more effect than poking at a PIX he doesn't really understand..&lt;br /&gt;&lt;br /&gt;Am I seriously recommending windows firewall over a PIX? No, &lt;b&gt;I'm&lt;/b&gt; not, because I'm a Cisco guy. But my windows admin buddy probably will, and that's the point. The tools we know how to use, are the tools that we will have the most effect with.&lt;br /&gt;&lt;br /&gt;Of course, as any security person will tell you, a layered approach is essential, but when you select your products for each layer, make sure it's the product which you can make fly. Otherwise, all you've bought is a bunch of problems and caveats you haven't seen before..  &lt;br /&gt;&lt;p class='blogpress_location'&gt;Location:&lt;a href='http://maps.google.com/maps?q=Dublin,%20Ireland&amp;z=10'&gt;Dublin, Ireland&lt;/a&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2347327864900357747-7872203061971761646?l=blog.olorin.co.uk' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.olorin.co.uk/feeds/7872203061971761646/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=2347327864900357747&amp;postID=7872203061971761646&amp;isPopup=true' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2347327864900357747/posts/default/7872203061971761646'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2347327864900357747/posts/default/7872203061971761646'/><link rel='alternate' type='text/html' href='http://blog.olorin.co.uk/2010/06/which-is-worlds-best-firewall-windows.html' title='Which is the worlds best firewall? Windows Firewall of course..'/><author><name>Dan Hughes</name><uri>http://www.blogger.com/profile/02863235256629112871</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='15900047760785177687'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2347327864900357747.post-7334593655185890621</id><published>2010-06-12T21:14:00.000+01:00</published><updated>2010-06-12T21:40:17.089+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='nat'/><category scheme='http://www.blogger.com/atom/ns#' term='cisco'/><category scheme='http://www.blogger.com/atom/ns#' term='vpn'/><category scheme='http://www.blogger.com/atom/ns#' term='&apos;global access lists&apos;'/><title type='text'>ASA new features in 8.3</title><content type='html'>Cisco quietly released the latest version of ASA code (8.3 which i must have missed the release of)  and while checking through the new feature releases I noticed two key changes.&lt;br /&gt;&lt;br /&gt;The first one is the option to use Globally Applied access lists. This is a big deal, as cisco firewall policies have always been interface based. It's one of the barriers that administrators of other devices find when starting to use PIX/ASA/IOS firewalls. The last couple of years have seen a couple of changes that indicated a move in that direction. We had zone based firewall (now the recommended way to firewall on IOS), where controls are applied between zones rather than interfaces. Now ASA (not PIX btw) move to global access lists.&lt;br /&gt;&lt;br /&gt;Is it better? That's going to turn into a religious argument I suspect. Some people like the idea that you have one policy where rules are configured, and one place only. You can argue that this simplifies configuration, especially on devices that have multiple occasional administrators, as you don't need to look in multiple places to find where rules are configured. &lt;br /&gt;&lt;br /&gt;Others (probably people like me who are very used to the PIX way of doing things) would argue that per-interface configuration means shorter more specific access lists per interface, meaning you've less to look through to find a rule - you just need to know what you're doing to make sure you look in the right place.. Time will tell what become the prevalent method, and it'll be interesting to see whether Cisco optimize performance towards one method or another (like ZBF being the 'optimised' method on ISR routers)..&lt;br /&gt;&lt;br /&gt;The second big change is the 'simplification' of NAT.. I've not finished reading up on this yet, but the bit I don't like is the bit in the release notes where it says that legacy configuration will be automatically upgraded. That sounds like something which will need a lot of testing before we're all confident in making live upgrades.. For me, I'd rather see an option to use either method, just for a version or two.  &lt;br /&gt;&lt;br /&gt;&lt;p class='blogpress_location'&gt;Location:&lt;a href='http://maps.google.com/maps?q=Fingrean%20Rd,,United%20Kingdom%4054.631392%2C-7.129582&amp;z=10'&gt;Fingrean Rd,,United Kingdom&lt;/a&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2347327864900357747-7334593655185890621?l=blog.olorin.co.uk' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.olorin.co.uk/feeds/7334593655185890621/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=2347327864900357747&amp;postID=7334593655185890621&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2347327864900357747/posts/default/7334593655185890621'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2347327864900357747/posts/default/7334593655185890621'/><link rel='alternate' type='text/html' href='http://blog.olorin.co.uk/2010/06/asa-new-features-in-83.html' title='ASA new features in 8.3'/><author><name>Dan Hughes</name><uri>http://www.blogger.com/profile/02863235256629112871</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='15900047760785177687'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2347327864900357747.post-2390444569641988758</id><published>2010-05-21T22:57:00.001+01:00</published><updated>2010-05-21T22:57:53.863+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='cisco'/><category scheme='http://www.blogger.com/atom/ns#' term='training'/><category scheme='http://www.blogger.com/atom/ns#' term='skills'/><category scheme='http://www.blogger.com/atom/ns#' term='ccie'/><title type='text'>Will the CCIE lab become more accesible - and is this a good thing?</title><content type='html'>Rumours are flying that CCIE lab prices are about to drop. We've already seen the lab move out of their static locations, and the interface used by candidates means there is no need to be in the next room to the kit.&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;Taking the lab&lt;/h2&gt;&lt;br /&gt;&lt;br /&gt;In my day (an unimaginable 19 months ago) taking the CCIE lab meant checking the lab booking tool daily to try to get lab slots, waiting months then for test day, the best bit of €2k of spend (including travel/hotel/etc). You can look at this in two ways. The fact it was hard and expensive to get a slot meant you made very sure you were ready before going. Conversely, you couldn't just study until you felt ready, then go.. &lt;br /&gt;&lt;br /&gt;&lt;h2&gt;So what's changed&lt;/h2&gt;&lt;br /&gt;&lt;br /&gt;In reality the change is more approach than technology. Over the last year, Cisco have had 'mobile' test centers which meant they could expand the amount of testing they could do, without the limitation of the space in their offices. Accessing routers remotely is of course not a new thing. It makes no difference if you're in the next room or 1000 miles from your rack. Most CCIE candidates use remote labs as part of their training, so there is nothing new to them.&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;How far could they scale this&lt;/h2&gt;&lt;br /&gt;&lt;br /&gt;Well, they could really increase the capacity enormously. There are four things they need to scale up to deliver more tests :&lt;br /&gt;&lt;br /&gt;1) Racks - This one is pretty easy.&lt;br /&gt;2) Seats and screens - either using their relationship with prometric, or by opening up in Cisco offices around the world, this would not be a major problem.&lt;br /&gt;3) Marking - this would need a little time to get trusted people with the right skills up to speed. Still, I'm sure they can do it easily enough with a little planning.&lt;br /&gt;4) Proctors - now this is the challenge. &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;Proctors&lt;/h2&gt;&lt;br /&gt;&lt;br /&gt;For those who haven't done it, the CCIE lab is different to the rest of their tests (in many ways) in that a proctor is there to help you understand what's being asked. Wording can often be unclear - I know when I was in the lab I was up with the proctor constantly clarifying things. This is probably the hardest thing to scale. Options that jump to mind would include :&lt;br /&gt;&lt;br /&gt;1) On-site proctors - if you've a permanent site, why not just hire another proctor?&lt;br /&gt;2) Access via telepresence - you could have a 'farm' of proctors all available remotely. This would have a big advantage that if you have people doing voice, security, R&amp;S in the same room - each can speak to a proctor who knows their track. That can be a big problem with the current system.. This is probably more cost effective as a proctor covering a small test site might not be overworked.&lt;br /&gt;3) Mobile proctors - covering a number of sites making sure that each site is covered when it's running tests. More appropriate to part time sites, or sites which run different tracks on different days..&lt;br /&gt;&lt;br /&gt;Either way, the issue is quite solvable.&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;Where does this leave us?&lt;/h2&gt;&lt;br /&gt;&lt;br /&gt;Well, if Cisco scaled up the ability to deliver tests, then there would probably be more cost effective. &lt;a href="http://darbyslogs.blogspot.com/2010/05/ok-2-confirms-no-date-found-yet-100000.html"&gt;Darby Weaver is predicting &lt;/a&gt;the $1000 lab this year, and as well as the poor economy, this more efficient delivery method may be a driver for that.  &lt;br /&gt;&lt;br /&gt;Is it a good thing? One thing comes to mind. If it's easy and quick to get a lab (as it is with a 'normal' cisco exam), is this going to encourage people to 'go and give it a go' rather than putting time/money/effort into training/studying? Would more cheap attendances lead to increased braindumping? Is it going to mean candidates aren't going to put the same study effort in before going to the lab, and just hope to get lucky?&lt;br /&gt;&lt;br /&gt;Or will it just mean the well prepared student can get a lab date when it suits them. Hopefully, it's the latter.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2347327864900357747-2390444569641988758?l=blog.olorin.co.uk' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.olorin.co.uk/feeds/2390444569641988758/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=2347327864900357747&amp;postID=2390444569641988758&amp;isPopup=true' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2347327864900357747/posts/default/2390444569641988758'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2347327864900357747/posts/default/2390444569641988758'/><link rel='alternate' type='text/html' href='http://blog.olorin.co.uk/2010/05/will-ccie-lab-become-more-accesible-and.html' title='Will the CCIE lab become more accesible - and is this a good thing?'/><author><name>Dan Hughes</name><uri>http://www.blogger.com/profile/02863235256629112871</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='15900047760785177687'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2347327864900357747.post-12713611048028548</id><published>2010-05-20T16:49:00.001+01:00</published><updated>2010-05-20T16:49:59.931+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='cisco'/><category scheme='http://www.blogger.com/atom/ns#' term='training'/><category scheme='http://www.blogger.com/atom/ns#' term='authorized training'/><title type='text'>Has IT certification become nothing more than a racket?</title><content type='html'>I've a funny relationship with 'authorized training' and certification. In one way, it is great that I know that within a reasonable period of time, I'll be able to attend a course which will give me a good grounding on 'how to drive' a particular technology. In Cisco land, the breadth of subjects that they cover is very impressive, they've made a real effort here. the certification process (especially the CCIE level exams in my opinion) drive us to better knowledge and to be better engineers. &lt;br /&gt;&lt;br /&gt;On the other side - it is generally just an intro. My personal experience of these courses has generally been underwhelming, and I've hoped to come out with a lot better understanding than I actually did. &lt;br /&gt;&lt;br /&gt;&lt;h&gt;Who goes down the route of certification?&lt;/h2&gt;&lt;br /&gt;&lt;br /&gt;Speaking to people on these courses, there are typically three kinds of people who attend them :&lt;br /&gt;&lt;br /&gt;1) End users of the equipment, who are buying an &lt;insert technology here&gt; and as part of the budget are going on the training. They generally don't care about doing the exam.&lt;br /&gt;2) People doing certifications for their own career (more applicable to the CCNA/CCNP/CCIE specific courses). Often very dedicated to get as much out of the experience as they can - although you can get braindump-bunnies too..&lt;br /&gt;3) Partner employee's who have to get the certification asap as their employer is going to be audited by Cisco soon.&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;Audit time&lt;/h2&gt;&lt;br /&gt;&lt;br /&gt;Let's ignore the first two for the moment. Anyone who's ever worked for a Cisco partner knows audit time. It's when senior management work out that if they get two people with certification X, they'll get an extra percentage point or two from Cisco on everything they buy. It's big money actually, and can be the difference between winning and losing business, so is important. So if you make the mistake of walking near them at the time they have this revelation, you will volunteer to go and do the certification.&lt;br /&gt;&lt;br /&gt;This leads to a lot of cheating. You see nobody cares how well the engineer knows the technology. That's another days problem. The key is to make sure that the certifications are in place by audit day. Quick is better than good. I don't like this (and let's be clear, it's not the way I do things!), but it's the way it is. It's a rotten part of the certification business, always has been and probably always will be.&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;how bad is it?&lt;/h2&gt;&lt;br /&gt;&lt;br /&gt;However this week I heard a story that made me realize how bad things have actually got. And I have to say, after all these years, it still shocked me. A friend of mine has recently attended a Cisco course, provided by one of the big UK authorized providers. The instructor started by handing out the official course guide, and a photocopy of the testking for the exam, and told the attendees to start reading through the questions during the evenings and come to him with any questions. Then he started going through the course notes.&lt;br /&gt;&lt;br /&gt;Now as I've said before, I don't approve of the whole braindump thing. It's pointless, it devalues the work of those who make the effort to actually go and learn the technology, but mostly it turns the whole certification business into nothing more than a racket. But I didn't think we'd got to the point where there was such acceptance of the fact that most people on the course are just going to then just going to braindump the exam. Surely most of us want to do it properly right? &lt;br /&gt;&lt;br /&gt;&lt;h2&gt;Summary&lt;/h2&gt;&lt;br /&gt;&lt;br /&gt;We have to decide what we want from a certification process. The problem is the partners who need certified staff, the training company, the testing firms, and Cisco themselves all do just fine out of the current system. It's us as engineers who are devalued and cheapened by a process which is meant to make us better at what we do, but actually just makes us rats in a process. If we don't approve, then expose the cheats, do it properly ourselves, and lets take the high ground and be better people as well as better engineers..&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2347327864900357747-12713611048028548?l=blog.olorin.co.uk' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.olorin.co.uk/feeds/12713611048028548/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=2347327864900357747&amp;postID=12713611048028548&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2347327864900357747/posts/default/12713611048028548'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2347327864900357747/posts/default/12713611048028548'/><link rel='alternate' type='text/html' href='http://blog.olorin.co.uk/2010/05/has-it-certification-become-nothing.html' title='Has IT certification become nothing more than a racket?'/><author><name>Dan Hughes</name><uri>http://www.blogger.com/profile/02863235256629112871</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='15900047760785177687'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2347327864900357747.post-4587211302931763658</id><published>2010-05-19T00:11:00.001+01:00</published><updated>2010-05-19T00:11:27.196+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='cisco'/><category scheme='http://www.blogger.com/atom/ns#' term='troubleshooting'/><category scheme='http://www.blogger.com/atom/ns#' term='skills'/><category scheme='http://www.blogger.com/atom/ns#' term='vpn'/><title type='text'>Troubleshooting: Dan's mistake of the week..</title><content type='html'>I've spent time over the last two weeks pulling my hair out as to why new traffic on an existing site to site VPN didn't work. Finally got it today, and reminded  myself an important lesson in the process.&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;Scenario&lt;/h2&gt;&lt;br /&gt;&lt;br /&gt;Take a simple site-site internet VPN between two sites (well there are lots, but this about a VPN between two sites), and two networks in each site. London has the network 10.15.1.0/24 and 10.15.2.0/24. Dublin has 10.35.130.0/24 and 10.35.139.0/24. Each site has a pair of ASAs (up to date code).&lt;br /&gt;&lt;br /&gt;Summary of the configuration here (it's not the real one for obvious reasons, and cut down to the key bits, but is accurate for the sake of the article) :&lt;br /&gt;&lt;br /&gt;Dublin-PIX :&lt;br /&gt;&lt;br /&gt;interface e0/0&lt;br /&gt; nameif outside &lt;br /&gt; security-level 0&lt;br /&gt; ip address 35.35.35.35 255.255.255.0&lt;br /&gt;!&lt;br /&gt;interface e0/1&lt;br /&gt; nameif inside&lt;br /&gt; security-level 100&lt;br /&gt; ip address 10.35.139.254 255.255.255.0&lt;br /&gt;!&lt;br /&gt;interface e0/1&lt;br /&gt; nameif dmz&lt;br /&gt; security-level 50&lt;br /&gt; ip address 10.35.130.254 255.255.255.0&lt;br /&gt;!&lt;br /&gt;crypto map Dublin 24 match address Dublin-London&lt;br /&gt;crypto map Dublin 24 set peer 15.15.15.15&lt;br /&gt;crypto map Dublin 24 set transform-set AES-256VPN&lt;br /&gt;crypto map Dublin interface outside&lt;br /&gt;!&lt;br /&gt;access-list Dublin-London ex per ip 10.35.130.0 255.255.252.0 10.15.0.0 255.255.0.0&lt;br /&gt;access-list Dublin-London ex per ip 10.35.139.0 255.255.255.0 10.15.0.0 255.255.0.0&lt;br /&gt;!&lt;br /&gt;access-list NONAT extended per ip 10.35.130.0 255.255.252.0 10.0.0.0 255.0.0.0&lt;br /&gt;access-list NONAT extended per ip 10.35.139.0 255.255.255.0 10.0.0.0 255.255.255.0&lt;br /&gt;!&lt;br /&gt;nat (inside) 0 access-list NONAT&lt;br /&gt;nat (inside) 1 10.35.139.0 255.255.255.0&lt;br /&gt;nat (dmz) 0 access-list NONAT&lt;br /&gt;nat (dmz) 1 10.35.130.0 255.255.255.0&lt;br /&gt;!&lt;br /&gt;global (outside) 1 interface&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;London-PIX :&lt;br /&gt;&lt;br /&gt;interface e0/0&lt;br /&gt; nameif outside &lt;br /&gt; security-level 0&lt;br /&gt; ip address 15.15.15.15 255.255.255.0&lt;br /&gt;!&lt;br /&gt;interface e0/1&lt;br /&gt; nameif inside&lt;br /&gt; security-level 100&lt;br /&gt; ip address 10.15.1.254 255.255.255.0&lt;br /&gt;!&lt;br /&gt;interface e0/1&lt;br /&gt; nameif dmz&lt;br /&gt; security-level 50&lt;br /&gt; ip address 10.15.2.254 255.255.255.0&lt;br /&gt;!&lt;br /&gt;crypto map London 14 match address London-Dublin&lt;br /&gt;crypto map London 14 set peer 35.35.35.35&lt;br /&gt;crypto map London 14 set transform-set AES-256VPN&lt;br /&gt;crypto map London interface outside&lt;br /&gt;!&lt;br /&gt;access-list London-Dublin extended permit ip 10.15.0.0 255.255.0.0 10.35.130.0 255.255.252.0&lt;br /&gt;access-list London-Dublin extended permit ip 10.15.0.0 255.255.0.0 10.35.139.0 255.255.255.0&lt;br /&gt;!&lt;br /&gt;access-list NONAT extended permit ip 10.15.0.0 255.255.0.0 10.0.0.0 255.0.0.0&lt;br /&gt;!&lt;br /&gt;nat (inside) 0 access-list NONAT&lt;br /&gt;nat (inside) 1 10.15.1.0 255.255.255.0&lt;br /&gt;nat (dmz) 0 access-list NONAT&lt;br /&gt;nat (dmz) 1 10.15.2.0 255.255.255.0&lt;br /&gt;!&lt;br /&gt;global (outside) 1 interface&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;Symptoms&lt;/h2&gt;&lt;br /&gt;&lt;br /&gt;The problem is that while traffic from 10.35.130.0/24 could get to machines in 10.15.1.0/24, traffic from 10.35.139.0/24 consistently could not. Running a packet-trace (at both ends) showed that it &lt;i&gt;should&lt;/i&gt; work, and packets where leaving the 10.35.0.0 site, arriving at 10.15.0.0 site, the response packets never made it back. A capture on the inside interface in site 15 showed the server did respond. Rule access-lists are all correct..&lt;br /&gt;&lt;br /&gt;To keep it simple - it's nothing to do with rules or the servers. I has probably never worked, but this is the first traffic to go between these two networks. &lt;br /&gt;&lt;br /&gt;Simply - the packets from Dublin-&gt;London pass, but packets from London-&gt;Dublin don't.&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;What it could be&lt;/h2&gt;&lt;br /&gt;&lt;br /&gt;Once I've a clear definition of the problem, the next thing is to rule in or out the most likely causes.&lt;br /&gt;&lt;br /&gt;The first thing that jumped to mind (and a common cause of issues with these symptoms) was that the NAT exemption wasn't set up correctly. Unless traffic is NAT exempted, it will NAT behind the interface IP, which will put it outside the VPN interesting traffic, and we would get these symptoms. However the packet-trace I did showed that the traffic was 'Allowed' to NAT exempt, so it wasn't that. I was actually still fairly convinced it could be, but eventually moved on.&lt;br /&gt;&lt;br /&gt;Second thought was 'could it be badly written ACLs for the VPN definition', or even some incorrect routing. After lots of staring, answer was nope, none of them.&lt;br /&gt;&lt;br /&gt;As sherlock homes (he's a British policeman) once said, 'when you've ruled out the probable, then whatever remains, however improbable, must be the answer'. So we're into the unlikely stuff. I spent hours looking for odd traffic handling quirks of the ASA. Tried a few things. Rebooted them. I was getting nowhere.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;So what was it?&lt;/h2&gt;&lt;br /&gt;&lt;br /&gt;Have you worked it out yet (I'll be impressed with you if you have)?&lt;br /&gt;&lt;br /&gt;I think you cross a line when you decide it isn't a probable cause. You decide it's going be something odd, then common sense leaves you and you start looking for crazy stuff. Don't get me wrong, sometimes it can be a bug, or a feature you don't understand properly, or something else crazy. But usually, it's something simple. &lt;br /&gt;&lt;br /&gt;I showed you the same parts of the configuration that I focused on - the sections relevant to the connection in question. The sharp eyed amongst you will have noticed the sequence numbers in the crypto map may point to other entries prior to this one. Such as :&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;London :&lt;br /&gt;&lt;br /&gt;crypto map London 9 match address London-Cork&lt;br /&gt;crypto map London 9 set peer 9.9.9.9&lt;br /&gt;crypto map London 9 set transform-set AES-256VPN&lt;br /&gt;!&lt;br /&gt;access-list London-SITE9 extended per ip 10.15.0.0 255.255.0.0 10.35.136.0 255.255.252.0&lt;br /&gt;&lt;br /&gt;You see, the second octect in the IP scheme denotes country code (353 is ireland - shortened to 35), and for some reason in the distant past someone decided to use non contiguous addresses (I can only assume satan was whispering in their ear). When the (older) Cork connection was set up (which has 136,137,138 ranges) they simplified it by using 10.35.136.0 255.255.&lt;b&gt;252&lt;/b&gt;.0. As this is a lower sequence number in the crypto map, it gets hit first, and the traffic never gets down to the ACL we want it to hit.&lt;br /&gt;&lt;br /&gt;As with so many of these things, once you work it out, it's obvious and you're dumb. So where did I go wrong? My biggest mistake was immediately deciding (see the second sentence of this article) that the issue could only be to do with the configuration of this particular site-site VPN (i.e. sequence 14 of the crypto map), or something crazy and probably global. I didn't look at the rest of the crypto map at all. Why would I?&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;Dan's approach to troubleshooting&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;When you've spent many years troubleshooting networks, you learn not to beat yourself up over silly mistakes like this. You learn from them and move on. I'll certainly not make this mistake again. However to help you with the issues you've never encountered before, troubleshooting depends on being logical and methodical. It's so incredibly important, and normally something I take very seriously. &lt;br /&gt;&lt;br /&gt;In this case, I wasn't as methodical or as logical as I should have been, and that's the real lesson I need to take away with me. &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2347327864900357747-4587211302931763658?l=blog.olorin.co.uk' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.olorin.co.uk/feeds/4587211302931763658/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=2347327864900357747&amp;postID=4587211302931763658&amp;isPopup=true' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2347327864900357747/posts/default/4587211302931763658'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2347327864900357747/posts/default/4587211302931763658'/><link rel='alternate' type='text/html' href='http://blog.olorin.co.uk/2010/05/troubleshooting-dan-mistake-of-week.html' title='Troubleshooting: Dan&amp;#39;s mistake of the week..'/><author><name>Dan Hughes</name><uri>http://www.blogger.com/profile/02863235256629112871</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='15900047760785177687'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2347327864900357747.post-4709547077500923102</id><published>2010-05-14T17:15:00.001+01:00</published><updated>2010-05-14T17:15:03.278+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='cisco'/><category scheme='http://www.blogger.com/atom/ns#' term='interviews'/><category scheme='http://www.blogger.com/atom/ns#' term='skills'/><category scheme='http://www.blogger.com/atom/ns#' term='jobs'/><title type='text'>How do you interview for technical people?</title><content type='html'>Having been through a rather grilling interview process myself this week, I'm curious how people out there interview for technical staff, and how successful or not they find certain techniques to be?&lt;br /&gt;&lt;br /&gt;The classical method of interviewing (either in person or over the phone), I've always found to be quite useless. It does have a 'weeding' effect of removing the completely clueless, but that's all. The problem is when you ask people to describe protocols/systems/methods etc you're testing their booksmart skills, not their real world ones.&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;Practical Tests&lt;/h2&gt;&lt;br /&gt;&lt;br /&gt;I've always loved the idea of a practical test, where some kit is set up in a 'mini lab' type setup, and a number of trouble tickets are given to the candidate. This will answer the 'can they troubleshoot' question! However it's quite time consuming to set up and grade - if you've ever tried to write these kinds of tests they actually take quite a lot of time to get clear and fair.&lt;br /&gt;&lt;br /&gt;As an alternative - there is whiteboarding a problem, where the candidate is given a theoretical issue, which they need to talk through their troubleshooting techniques for. It's simpler to do for the interviewer, but can be quite daunting for people who are not used to public presentations.&lt;br /&gt;&lt;br /&gt;&lt;h2&gt; Whiteboarding&lt;/h2&gt;&lt;br /&gt;&lt;br /&gt;In general, making someone answer an open question (e.g. show me on the board how OSPF works) will really test the depth of their knowledge - beyond being able to regurgitate the books they've read. However, again you have the problems of nerves and people unused to standing up and presenting. If you're not looking for 'public facing' staff, are you ruling out people based on a skill you don't need? Speaking to recruiters, this kind of method can rule out a lot of people!&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;Comments&lt;/h2&gt;&lt;br /&gt;&lt;br /&gt;I'm really interested to hear your comments on this one. What have you done (or had done to you!) over the years, and what do you think worked and didn't work!&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2347327864900357747-4709547077500923102?l=blog.olorin.co.uk' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.olorin.co.uk/feeds/4709547077500923102/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=2347327864900357747&amp;postID=4709547077500923102&amp;isPopup=true' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2347327864900357747/posts/default/4709547077500923102'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2347327864900357747/posts/default/4709547077500923102'/><link rel='alternate' type='text/html' href='http://blog.olorin.co.uk/2010/05/how-do-you-interview-for-technical.html' title='How do you interview for technical people?'/><author><name>Dan Hughes</name><uri>http://www.blogger.com/profile/02863235256629112871</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='15900047760785177687'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2347327864900357747.post-4514182219908472881</id><published>2009-04-11T11:42:00.001+01:00</published><updated>2010-05-07T21:11:30.948+01:00</updated><title type='text'>ASA using the sdi protocol to authenticate against replica RSA servers</title><content type='html'>I found an interesting thing the other day which is not immediately obvious from either Cisco or RSA's documentation. We're all used to using RADIUS as a AAA method, and I would usually use it when talking to an RSA server, but you can also use the RSA protocol itself (check version).&lt;br /&gt;&lt;br /&gt;In a single RSA server environment, this is well documented ( links), but there is a caveat when using replicas. Let's say we have two locations, an ASA in each and an RSA server in each. What you'd expect to do is configure two aaa-server host &lt;ip address&gt; on each asa, with the local one first right? &lt;br /&gt;&lt;br /&gt;Turns out that's not quite how it works. When you configure the aaa-server host what you are actually telling the asa is 'go talk to this RSA server, and download information about the RSA topology'. This MUST be the primary RSA server. &lt;br /&gt;&lt;br /&gt;The first time an authentication request is sent,  the ASA will connect to the RSA sever, agree a shared secret, and download the topology. From then on, even though you only have the one server configured, the asa will be aware of both the primary and replica.  &lt;br /&gt;&lt;br /&gt;I haven't yet found a way to control which RSA server the ASA uses - I suspect you can't - but I did test failover and the firewall will authenticate against the replica (even though it isn't configured) when the primary fails..&lt;br /&gt;&lt;br /&gt;If you specifically want the site B firewall to use the site B RSA server (the replica) I suspect you need to use RADIUS and configure both servers in the order you want to use them.&lt;br /&gt;&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2347327864900357747-4514182219908472881?l=blog.olorin.co.uk' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.olorin.co.uk/feeds/4514182219908472881/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=2347327864900357747&amp;postID=4514182219908472881&amp;isPopup=true' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2347327864900357747/posts/default/4514182219908472881'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2347327864900357747/posts/default/4514182219908472881'/><link rel='alternate' type='text/html' href='http://blog.olorin.co.uk/2009/04/asa-using-sdi-protocol-to-authenticate.html' title='ASA using the sdi protocol to authenticate against replica RSA servers'/><author><name>Dan Hughes</name><uri>http://www.blogger.com/profile/02863235256629112871</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='15900047760785177687'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2347327864900357747.post-9213117482682900672</id><published>2010-04-27T07:20:00.001+01:00</published><updated>2010-04-27T09:00:10.111+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='CCIE cisco certification'/><title type='text'>Why the CCIE program is more useful than the certification itself.</title><content type='html'>About 3 years ago, when I'd first decided to go down the route of getting my CCIE, I remember speaking a colleague who had done his a year or two before, and asking him was it worth the effort. He told me 'regardless of having the certification, the process will make you a better engineer'. When I asked him what he meant by that, he told me 'you'll see', then went off the pub for the afternoon leaving the hard work to his minion (me).&lt;br /&gt;&lt;br /&gt;Now, as my first recert is getting close, I get what he meant. There's an awful lot of rubbish talked about the CCIE, and how guru-like CCIE's are begged on a daily basis to move to higher and higher paid jobs.. I can't deny, it is a door opener when looking for a gig, and sometimes clients specify they want a CCIE for a given role, but door opener is all that the certification is. You don't get an easy interview as a result - in fact when you say you're a CCIE, people try harder to catch you out, and you have to be better than ever to get and keep your credibility. &lt;br /&gt;&lt;br /&gt;The reason the CCIE teaches you to be a better engineer, is not because it gives you god-like knowledge of the IOS (you do have to learn the IOS backwards, but this soon starts to slip and become out of date unless you keep it up), but it teaches you four things :&lt;br /&gt;&lt;br /&gt;1) Discipline - when you're studying for the CCIE, you have to be able to come home from a tough day, go to your lab, and study for hours, day, after day, for an average of 12-18 months. You give up on your home life, lose weekends, don't see your buddies, and so on. It's hard - really hard, but you have to have the discipline to sit down, and get on with it. This stands to you afterwards, for example, before I did my CCIE, I couldn't work at home - I got nothing done. Now I work at home 4 days a week and get twice as much done as when I go into the office. &lt;br /&gt;&lt;br /&gt;2) The use of the DocCD (sorry, I'm old fashioned). I don't remember every timer default, or how to configure every feature of the IOS. But I can find out pretty damned quick, and I never use google. You have to know the documentation site backwards to do the lab. During preparation, you learn how to navigate the documentation site quickly and effectively, and learn where everything is. In the real world, this is really useful every single day. No more searching google and hoping the answer isn't on experts-exchange.&lt;br /&gt;&lt;br /&gt;3) Attention to detail - you can't make mistakes in the CCIE lab. One little thing can cost you the exam (the way the marking works makes a mistake on the underlying infrastructure mean that lots of questions which depend on it fail). So you have to be perfect every time. Personally, this was a bigger challenge than learning the IOS - when I did mock labs it was the dumb mistakes that got me every time. You have to work on that to a point where your planning and coding is perfect every time.&lt;br /&gt;&lt;br /&gt;4) Troubleshooting - this is the big difference between the CCIE lab and all other Cisco exams. It's not enough to know the theory. You need to be able to set up a really complex network, spot the problems, and troubleshoot them  quickly and effectively when the little trap that was left for you trips up your configuration. During your preparation, you spend hours and hours every week setting up scenarios to fail, so you can troubleshoot them. This is invaluable.&lt;br /&gt;&lt;br /&gt;I would always recommend this process to anyone who hasn't done it, and wants to be the best engineer they can be to do the CCIE. Not because you learn lots of cool features (although you do), and not because you'll get a better paid job (hopefully you will), but because it teaches you how to work better, faster, and more reliable in the real world. This is why CCIE's are still so sought after. &lt;br /&gt;&lt;br /&gt;One last point - don't be tempted with the shallow promises of braindump sites. By giving yourself this 'help', you're not giving yourself the main learning experience, you're only passing the exam. When you're interviewed, people will know. When you go to a job, you'll get found out..&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2347327864900357747-9213117482682900672?l=blog.olorin.co.uk' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.olorin.co.uk/feeds/9213117482682900672/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=2347327864900357747&amp;postID=9213117482682900672&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2347327864900357747/posts/default/9213117482682900672'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2347327864900357747/posts/default/9213117482682900672'/><link rel='alternate' type='text/html' href='http://blog.olorin.co.uk/2010/04/why-ccie-program-is-more-useful-than.html' title='Why the CCIE program is more useful than the certification itself.'/><author><name>Dan Hughes</name><uri>http://www.blogger.com/profile/02863235256629112871</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='15900047760785177687'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2347327864900357747.post-1915702143624288405</id><published>2010-04-14T17:34:00.001+01:00</published><updated>2010-04-14T17:36:23.652+01:00</updated><title type='text'>DNSSec - and why the Internet probably won't break today.</title><content type='html'>If you're like me someone (quite possibly pointy haired) probably came running up to your desk in the last day or two telling you how the internet is about to come crashing down around us (yes, Cisco did promise it'd never be the same!) due to the deployment of DNSSec which is happening at the moment, and asked what you were doing about it. Articles like &lt;a href="http://www.theregister.co.uk/2010/04/13/dnssec/"&gt;this&lt;/a&gt; really don't help.&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;DNSSec&lt;/h2&gt;&lt;br /&gt;&lt;br /&gt;DNSSec is something we all need to start looking at, and it is doing to deliver a lot of security benefits. It's also something which we need to actively test and probably change things within our infrastructures to make work. For a good overview of DNSSec, start your reading at &lt;a href="http://en.wikipedia.org/wiki/Dnssec"&gt;wikipedia&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;As with all DNS related subjects, there are two separate issues. Firstly, what we do with the domains we own - i.e. when do we start signing them - simple answer, not until the next tier up has (the current work is on the root servers, when that's complete the TLD's will be done, then you can start looking at your domains!). Secondly, how does it affect how we resolve other people's domains. This is where the current publicity is focused, and where we will probably have to do a little work soon.&lt;br /&gt;&lt;br /&gt;In a simple scenario, where you have stub resolvers in your organization (i.e. your DNS servers point out to your ISP for recursive queries), there is little you need to change in the short term. This is mainly down to the fact that the main difference will be an extra flag set in the response to say 'this is Authenticated Data'. &lt;br /&gt;&lt;br /&gt;If however, you do recursive lookups yourself (i.e. your DNS servers don't have a forwarder set, they just go out the root servers and start doing a full recursive lookup) then there is a change. Put simply, it will be asking for more data in the response from the various servers it talks to, using an extended version of DNS called EDNS. When the whole system is filled with signed DNS records, you'll be getting answers back which contain records larger then 512bytes (and probably fragmented packets). Most firewalls will block these large UDP DNS packets by default, as it has become accepted security practice to do so. &lt;br /&gt;&lt;br /&gt;It's important to note that some firewalls will know the difference between EDNS, and will not apply the restriction to EDNS. For example, in earlier versions of PIX (6.3.2 and below), you had to manually configure the DNS fixup to permit DNS packets with the longer length :&lt;br /&gt;&lt;br /&gt;fixup protocol dns maximum-length 4096&lt;br /&gt;&lt;br /&gt;in more recent versions, it would be covered by :&lt;br /&gt;&lt;br /&gt;policy-map type inspect dns preset_dns_map&lt;br /&gt; parameters&lt;br /&gt;  message-length maximum 4096&lt;br /&gt;&lt;br /&gt;but here's the thing, it's EDNS not DNS, so it doesn't actually affect it.  However, all firewalls are different in their support for EDNS, you do need to check this on your firewall/router to be sure that it's supported.&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;Testing&lt;/h2&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;A good way to tell if your firewall/router is blocking these larger DNS packets, is to use the test listed at &lt;a href="https://www.dns-oarc.net/oarc/services/replysizetest"&gt;OARC&lt;/a&gt;. Here are two tests, the first one running to a non-EDNS capable DNS server (OpenDNS), and the other running to a EDNS capable one (Verizon). In both cases, they are running through an ASA (8.2.2) with default DNS message length of 512 :&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;dhughes@dynamips:~$ dig @208.67.222.222 +short rs.dns-oarc.net txt&lt;br /&gt;rst.x476.rs.dns-oarc.net.&lt;br /&gt;rst.x485.x476.rs.dns-oarc.net.&lt;br /&gt;rst.x490.x485.x476.rs.dns-oarc.net.&lt;br /&gt;"208.69.34.6 DNS reply size limit is at least 490"&lt;br /&gt;"208.69.34.6 &lt;strong&gt;lacks EDNS, defaults to 512"&lt;/strong&gt;&lt;br /&gt;"Tested at 2010-04-14 15:32:28 UTC&lt;br /&gt;&lt;br /&gt;Here - EDNS is not available.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;dhughes@dynamips:~$ dig @158.43.128.1 +short rs.dns-oarc.net txt&lt;br /&gt;rst.x3827.rs.dns-oarc.net.&lt;br /&gt;rst.x3837.x3827.rs.dns-oarc.net.&lt;br /&gt;rst.x3843.x3837.x3827.rs.dns-oarc.net.&lt;br /&gt;"62.189.58.236 sent EDNS buffer size 4096"&lt;br /&gt;"Tested at 2010-04-14 16:10:18 UTC"&lt;br /&gt;"62.189.58.236 DNS reply size &lt;strong&gt;limit is at least 3843"&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Here is a response which is considerably larger than 512. This means we can get the traffic through our firewall.&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;Summary&lt;/h2&gt;&lt;br /&gt;&lt;br /&gt;The Internet isn't broken. You should check to be sure that your firewall will pass the EDNS traffic ASAP, and if not, make the appropriate changes. You can tell the pointy haired boss who's sweating in the corner, that you've fixed the internet, and it'll all be fine...&lt;br /&gt;&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2347327864900357747-1915702143624288405?l=blog.olorin.co.uk' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.olorin.co.uk/feeds/1915702143624288405/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=2347327864900357747&amp;postID=1915702143624288405&amp;isPopup=true' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2347327864900357747/posts/default/1915702143624288405'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2347327864900357747/posts/default/1915702143624288405'/><link rel='alternate' type='text/html' href='http://blog.olorin.co.uk/2010/04/dnssec-and-why-internet-probably-won.html' title='DNSSec - and why the Internet probably won&amp;#39;t break today.'/><author><name>Dan Hughes</name><uri>http://www.blogger.com/profile/02863235256629112871</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='15900047760785177687'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2347327864900357747.post-1504935071425560261</id><published>2010-04-14T13:06:00.000+01:00</published><updated>2010-04-14T13:06:53.614+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='cisco reload remote administration'/><title type='text'>Making changes to remote systems..</title><content type='html'>&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;Every time we change something on the network, we take a risk. We may well have tested it in the lab/pre-prod environment, but there's always some risk. The nature of the change determines how much risk. It's why networks are most stable when the admin is on holiday.&amp;nbsp;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px; min-height: 14.0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;If it's on a device that you are standing next to, you know that if it goes wrong, you can always recover it manually. But what do you do if it's remote? Now with cisco routers and switches - as long as it's something in the config, you can usually get back by rebooting*, and the startup-config will be reloaded. But it's a little bit embarrassing to have to call the office and get someone to do this for you. Also, if you're following a sensible change control process, you've made the change out of hours when there's no-one there to do this.&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px; min-height: 14.0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;A really useful command here is &lt;b&gt;'reload in &lt;x&gt;&lt;/x&gt;&lt;/b&gt;' - where x is a number of minutes. If you follow this procedure - you'll always know you can get back to where you were :&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px; min-height: 14.0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;1) write mem the old, known working, config&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;2) enter the command 'reload in 20' &amp;nbsp; &amp;nbsp; &amp;nbsp; (or whatever interval you choose)&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;3) make the change.&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px; min-height: 14.0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;&lt;in -="" 1="" 2,="" access="" all="" ap="" aren't="" connected="" example="" from="" i'm="" i've="" if="" in="" lost="" moving="" on="" place="" services="" that="" the="" to="" van=""&gt;&lt;/in&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px; min-height: 14.0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;console#telnet 192.168.1.250&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;Trying 192.168.1.250 ... Open&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px; min-height: 14.0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px; min-height: 14.0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;User Access Verification&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px; min-height: 14.0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;Username: cisco&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;Password:&amp;nbsp;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px; min-height: 14.0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;ADMIN-SW#wr mem&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;Building configuration...&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;[OK]&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;ADMIN-SW#reload in 5&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;Reload scheduled in 5 minutes by cisco on vty0 (192.168.1.150)&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;Proceed with reload? [confirm]&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;ADMIN-SW#&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px; min-height: 14.0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px; min-height: 14.0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;***&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;*** --- SHUTDOWN in 0:05:00 ---&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;***&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;ADMIN-SW#conf t&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;Enter configuration commands, one per line.&amp;nbsp; End with CNTL/Z.&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;ADMIN-SW(config)#int f0/4&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;ADMIN-SW(config-if)#sw acc vlan 2&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;&lt;lost access="" at="" point="" this=""&gt;&lt;/lost&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px; min-height: 14.0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px; min-height: 14.0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;Now, either the change works, and you maintain your access. Depending on the nature of the change, reconnect a new session to be sure. Then, when you're happy that it's not going to break again, enter 'reload cancel', and the scheduled reboot will be cancelled. If for some reason the change fails, then after 20 minutes, the device will reboot, and you can go back to it and work out why.&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px; min-height: 14.0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;In this case, the change worked and I can reconnect :&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px; min-height: 14.0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;console#telnet 192.168.1.250&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;Trying 192.168.1.250 ... Open&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px; min-height: 14.0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px; min-height: 14.0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;User Access Verification&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px; min-height: 14.0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;Username: cisco&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;Password:&amp;nbsp;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px; min-height: 14.0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;Reload scheduled in 4 minutes and 30 seconds by cisco on vty0 (192.168.1.150)&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;ADMIN-SW#relo&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;ADMIN-SW#reload cancel&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;ADMIN-SW#&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px; min-height: 14.0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px; min-height: 14.0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;***&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;*** --- SHUTDOWN ABORTED ---&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;***&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px; min-height: 14.0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;ADMIN-SW#&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;ADMIN-SW#&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px; min-height: 14.0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px; min-height: 14.0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;If that hadn't worked (or if I hadn't gone back in to cancel it!)&amp;nbsp; then after the five minutes the switch would reboot, and come back in its previous state. It's still an outage of course, and you still should have tested your change better, but at least you're able to recover, regroup, and try again.&amp;nbsp;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px; min-height: 14.0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;I ALWAYS do this before a change on a remote device, even if I can't imagine any way that this change can break anything. Why - because I've been bitten too many times by devices far far away.&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px; min-height: 14.0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px; min-height: 14.0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px; min-height: 14.0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;*ASA/PIX in FO mode is different. I'll post on it another day.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2347327864900357747-1504935071425560261?l=blog.olorin.co.uk' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.olorin.co.uk/feeds/1504935071425560261/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=2347327864900357747&amp;postID=1504935071425560261&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2347327864900357747/posts/default/1504935071425560261'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2347327864900357747/posts/default/1504935071425560261'/><link rel='alternate' type='text/html' href='http://blog.olorin.co.uk/2010/04/making-changes-to-remote-systems.html' title='Making changes to remote systems..'/><author><name>Dan Hughes</name><uri>http://www.blogger.com/profile/02863235256629112871</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='15900047760785177687'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2347327864900357747.post-6474189967838968827</id><published>2010-04-07T17:14:00.001+01:00</published><updated>2010-04-07T17:14:36.568+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='aaa password management security expiration complexity'/><category scheme='http://www.blogger.com/atom/ns#' term='password creation'/><title type='text'>How to create a strong yet memorable password.</title><content type='html'>We're often told 'make sure you use a good password'. When we change our passwords at work we're often forced to add random characters into it to make it more complicated. This can have a detrimental effect on how how easy it is to remember. For a rant on the importance of passwords being memorable see &lt;a href="http://blog.olorin.co.uk/2010/04/aaa-part-1-password-management-myths.html"&gt;this&lt;/a&gt;. This post is the second of a short series covering various areas of password management and related issues, and is going to cover a simple method for devising strong yet memorable passwords.&lt;br /&gt;&lt;br /&gt;So how do we come up with a password which is memorable, and really hard to guess. We need to be sure it's a reasonable length, contains a mix both small and capital letters, numbers (ideally) and non alpha-numberic characters to make it had to guess. Unfortunately passwords like lk^7*Sn7@'h&amp; are hard to guess, but also hard to remember..&lt;br /&gt;&lt;br /&gt;We tend to remember things we associate images, sounds, feelings, taste, touch etc with, rather than lists of characters. Lines in songs, poems, phrases with films, headlines in newspapers stick with us because of an image we form in our minds, which we find easy to recall. &lt;br /&gt;&lt;br /&gt;Take the time at the end of 'Back to the Future' when the Doc Brown comes back in the now flying DeLorian, and tells Marty that they need to go to the future. When told the road isn't long enough to get to 88Mph, who can forget the Doc dropping down his sunglasses and saying 'Roads, where we're going, we don't need roads!'.&lt;br /&gt;&lt;br /&gt;Memorable right? If you weren't a fan of 'back to the future', take a song lyric you like, or line from a film/poem/court judgement you enjoyed, and write it down capitalized and punctuated. &lt;br /&gt;&lt;br /&gt;Roads, where we're going, we don't need roads!&lt;br /&gt;&lt;br /&gt;Lets take the first character from each word, and the punctuation, and we get :&lt;br /&gt;&lt;br /&gt;R,wwg,wdnr!&lt;br /&gt;&lt;br /&gt;So memorable that you will never need to write it down, and almost impossible to guess. If your system also want's a number, then either substitute, or add one.. So we could make it  R,wwg,wdnr1 .&lt;br /&gt;&lt;br /&gt;I've used this system for years, and don't have to write down my password to remember it, and have never had a problem with 'password to simple' complaints from the operating system.&lt;br /&gt;&lt;br /&gt;Comments, as always, are welcome!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2347327864900357747-6474189967838968827?l=blog.olorin.co.uk' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.olorin.co.uk/feeds/6474189967838968827/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=2347327864900357747&amp;postID=6474189967838968827&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2347327864900357747/posts/default/6474189967838968827'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2347327864900357747/posts/default/6474189967838968827'/><link rel='alternate' type='text/html' href='http://blog.olorin.co.uk/2010/04/how-to-create-strong-yet-memorable.html' title='How to create a strong yet memorable password.'/><author><name>Dan Hughes</name><uri>http://www.blogger.com/profile/02863235256629112871</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='15900047760785177687'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2347327864900357747.post-4600225308681379775</id><published>2010-03-29T22:35:00.000+01:00</published><updated>2010-04-07T16:49:52.601+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='BGP route selection Cisco CCIE'/><title type='text'>BGP Route selection (the brief version)</title><content type='html'>&lt;span class="Apple-style-span" style="font-family: 'Lucida Grande'; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 11px;"&gt;If you're preparing for an exam right now, you probably need to know the full version of this - located &lt;a href="http://www.cisco.com/en/US/tech/tk365/technologies_tech_note09186a0080094431.shtml"&gt;here&lt;/a&gt;..&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Lucida Grande'; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 11px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Lucida Grande'; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 11px;"&gt;However in the real world there are ( in cisco land anyway ) 4 parameters that you typically use. There are two separate 'sets' - attributes which govern how traffic leaves your AS (i.e. routes which are members of other AS's - or outbound traffic); and attributes which govern how traffic enters your AS (i.e. they belong to your AS - inbound traffic).&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Lucida Grande'; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 11px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Lucida Grande'; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 11px;"&gt;Lets look at outbound traffic first. The two parameters we can change to alter this are&amp;nbsp;&lt;a href="http://www.cisco.com/en/US/tech/tk365/technologies_tech_note09186a00800c95bb.shtml#weight"&gt;weight&lt;/a&gt;&amp;nbsp;and&amp;nbsp;&lt;a href="http://www.cisco.com/en/US/tech/tk365/technologies_tech_note09186a00800c95bb.shtml#localpref"&gt;&amp;nbsp;local preference&lt;/a&gt;. Weight is Cisco proprietary, and is local to the router (it is not exchanged with other devices). Local preference on the other hand is exchanged by routers within an AS (subject to normal iBGP rules on split horizon). The path with the lowest weight (best) will be selected over the path with the highest (best) local preference.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Lucida Grande'; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 11px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Lucida Grande'; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 11px;"&gt;For inbound traffic you also have two options, &lt;a href="http://www.cisco.com/en/US/tech/tk365/technologies_tech_note09186a0080094934.shtml#med"&gt;MED&lt;/a&gt; (AKA metric), and path. MED has a few limitations - firstly - and most importantly - this attribute can be passed to (and within) a directly neighboring AS, but will be passed no further.&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Lucida Grande'; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 11px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Lucida Grande'; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 11px;"&gt;Let's take and example - you are connecting to the internet via two separate ISPs, and you want to control which ISP your inbound traffic is to come down, using the MED attribute. You set a MED of 100 on ISP A, and 200 on ISP B (lowest wins), so all the traffic will come down ISP A right? Wrong. ISP A will have a path with a MED of 100, and ISP B will have a path of 200, but they won't pass the MED to each other to compare. When the paths get advertised out to the rest of the internet, the MED will be stripped off, and the rest of the world will pay no attention to it.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Lucida Grande'; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 11px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Lucida Grande'; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 11px;"&gt;What will actually determine* how this traffic enters your network is the AS path. Go back to our example above - both ISP A and B will have two paths to get to your network. One will your peering with them. It will have a path length (i.e. the number of AS's in the path) of 1 (your AS). Let's pretend ISP A and ISP B peer with each other directly and exchange all paths - so they will have a second path to get to you via the other ISP. This will have a path length of 2. Path length works on shortest path wins, so they will always send traffic down the direct peering. Their peers (and backbones) will see both paths, and depending on how they connect, will favour one over the other. Typically, lets say ISP A is a well peered tier 1 ISP, it will probably have a shorter path to most destinations than ISP B, who lets say is a small local ISP, which is often going to have longer paths to get to most destinations. This by itself will bring most (but not all) traffic down ISP A.&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Lucida Grande'; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 11px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Lucida Grande'; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 11px;"&gt;If you want to force a particular path, you can perform what's called 'AS Path pre-pending' (or sometimes path 'stuffing'). Simply put, we repeatedly prepend our own AS to the path that we want to make 'worst' - lets say that's ISP B. If our AS is 1234, then we send a path of &amp;lt;1234,1234,1234,1234,1234,1234&amp;gt; to ISP B, and a path of &amp;lt;1234&amp;gt; to ISP A. This will generally make A preferential to all but the most crazily connected peers. Even traffic generated from within ISP B will now travel over the peering to A and down that link (path length of 2 rather than 6).&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Lucida Grande'; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 11px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Lucida Grande'; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 11px;"&gt;MED does have a use though - let's say you have two connections to the same ISP, and want to choose one link (and we'll assume the ISP does nothing clever at their end) over the other. MED will work well, as it propagate the metric to the ISP's backbone, and within that backbone, control which path is seen as best.&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Lucida Grande'; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 11px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Lucida Grande'; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 11px;"&gt;For enterprise networks, this is a common use, although it's often can be a waste of time, as the ISP will often assume that everything you tell them is wrong, strip all attributes from your advertisements, and control this themselves. Having done the job, and knowing how many customers screw this up, it's not as crazy as it may seem. If you want to do this, make sure you have the conversation with the ISP about it first, and make sure they're not going to strip your attributes. In such a scenario -&amp;nbsp;&amp;nbsp;I'd generally still use path - it's harder to overwrite, and given the choice, best path will take preference over best MED.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Lucida Grande'; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 11px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Lucida Grande'; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 11px;"&gt;Comments and corrections welcome!&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Lucida Grande'; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 11px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Lucida Grande'; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 11px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Lucida Grande'; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 11px;"&gt;* it can be a lot more complicated than this - ISP backbone teams spent half their time making sure traffic enters/leaves their network the way they want it to - i.e. the cheapest way. It's a form of warfare. Let's pretend for the sake of this example that it's simple.&lt;/span&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2347327864900357747-4600225308681379775?l=blog.olorin.co.uk' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.olorin.co.uk/feeds/4600225308681379775/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=2347327864900357747&amp;postID=4600225308681379775&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2347327864900357747/posts/default/4600225308681379775'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2347327864900357747/posts/default/4600225308681379775'/><link rel='alternate' type='text/html' href='http://blog.olorin.co.uk/2010/03/bgp-route-selection-brief-version.html' title='BGP Route selection (the brief version)'/><author><name>Dan Hughes</name><uri>http://www.blogger.com/profile/02863235256629112871</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='15900047760785177687'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2347327864900357747.post-8798051476123701096</id><published>2010-04-07T11:18:00.001+01:00</published><updated>2010-04-07T13:03:25.325+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='aaa password management security expiration complexity'/><title type='text'>AAA Part 1 - Password Management - myths and a good rant.</title><content type='html'>Password management is a personal bugbear of mine. I think it's generally done really badly, and the security industry has adopted a number of policies which are universally accepted as best practice, without much thought as to why. I call them the myths of password management.&lt;br /&gt;&lt;br /&gt;This post will be the first of a short series covering various areas of AAA, and is going to cover the myths around password quality and rotation.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;The Myth of password rotation&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;I've always argued that there are two really important objectives when it comes to passwords :&lt;br /&gt;&lt;br /&gt;1) No-one can find out your password.&lt;br /&gt;2) You can remember the password.&lt;br /&gt;&lt;br /&gt;Over simple? Not really. When you boil it down, this is what you need from a password.&lt;br /&gt;&lt;br /&gt;Security managers tend to focus on the first objective, without much attention being given to the second. I'd argue that both are equally important. Let's take a scenario (which is amazingly common) where policy is set that passwords must be changed every 12 weeks. The first question I'd have is why?&lt;br /&gt;&lt;br /&gt;What does this actually achieve? If the password is not guessable, then constant rotation achieves nothing positive. I'd won't &amp;nbsp;go as far as saying it should never be changed (although it is the logical conclusion of my argument), but if objective 1 has been achieved, then there is no need for constant password rotation.&lt;br /&gt;&lt;br /&gt;In fact, the one thing that is achieved by over-regular password changes, is we will fail to satisfy objective 2. A place I recently worked make me change passwords on about 20 different systems every 2 months. Most of those systems, I didn't log onto very often. As a result, I often had two or three revisions of my password in play at any one time. I couldn't remember which password to use in which place. And after one has been deprecated a while, I don't remember it at all. Which means I need to document it somewhere. Now we've broken objective 1.&lt;br /&gt;&lt;br /&gt;I use a system (I'll do a separate post on how) for creating passwords which makes them unguessable(tm) - (but very memorable). There are plenty of others too. Any password can of course be broken by a brute force attack, but assuming any kind of sensible lock-out mechanism is applied, I'm happy to say that no-one knows my password. If someone logs into a system with my credentials - it had to be me. No excuses. &amp;nbsp;The term often used for this is non-repudiation - in other words I can't deny it was me.&lt;br /&gt;&lt;br /&gt;Once my password gets written down, even in some kind of encrypted password management tool, we can now only go as far as I'm fairly sure no-one knows my password. Other people have access to the tool (anything stored on my 'domain member' PC is readable by admins), there may be a flaw in the password management tool. You see the difference - we've gone from definitely, to fairly sure. Objective 1 is now no longer satisfied, and there is no longer non-repudiation.&lt;br /&gt;&lt;br /&gt;To put it very simply, if the password is well formulated, and your systems have a sensible lock out mechanism, then constantly changing the password is not going to have any positive affect on your security. Conversely, constantly changing passwords make people write them down, this means they are no longer unguessable. This has made your security worse.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Myth - you need at least 8 characters in your password&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;This one really annoys me. Lets say a password using a combination of letters, capitals, numbers and non-alphanumberic characters (based on my Mac keyboard) gives you something like 108 to the power of X, where X is the number of characters in your password (in other words, there are 108 characters that 'could' make up each character) as the number of combinations that you could use for your password. &lt;br /&gt;&lt;br /&gt;A 5 character password has a 1:14.7bn chance of being guessed, a 6 character password has a 1:1.5tn chance of being guessed, a 7 character password has a &amp;nbsp;1:171tn chance of getting guessed, &amp;nbsp;and an 8 character password has an 1:18.5 sextillion (thousand trillion) chance of being guessed.&lt;br /&gt;&lt;br /&gt;As long as you use a sensible way of coming up with passwords, and lock out an account after a sensible number of failed attempts - then the difference between 14.7 billion (5 characters) and 18.5 sextillion (8 characters) is irrelevant. &amp;nbsp;To put it in context, the chance of winning the UK lottery jackpot is an easily guessable 1:14 million. In reality the odds will be lower than that as most people use more letters than anything else, and you'll get a couple of goes before the account locks, but you're not going to guess it.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;'As long as you have good passwords and a sensible lock out policy....'&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;You've probably noticed that written a few times. If you've ever been in a meeting with me you've probably heard me chant it like a mantra. The more astute amongst you are hiding in the long grass waiting to pounce with something like 'ahh, but good security comes from layering good practices in case one fails - like the system that doesn't have the lockout policy set'.&lt;br /&gt;&lt;br /&gt;Yes, that's true. But here's the thing, if you have an accessible system that does not lock out properly, and an attacker decides to run a brute force attack to guess the password, then it makes no difference if the password was changed yesterday or 6 months ago. They're either going to get it or they're not. You're into attack detection and mitigation now.&lt;br /&gt;&lt;br /&gt;Which leads us predictably onto the question of 'how do you make users make their passwords complicated?'. It is the big question of all this - and focusing effort here, rather than on satisfying myths, is how you will achieve improved security.&amp;nbsp;And of course, if I had a magic answer for this, I'd be so stinking rich I wouldn't be wasting good beach time on writing this post.&lt;br /&gt;&lt;br /&gt;The most cost effective (best benefit for your buck) is always education, combined with the tools available within your NOS to enforce complexity. Teach people how to create good passwords - so that when windows tells them to make it complicated, they know how to do so easily. Teach them &lt;b&gt;why&lt;/b&gt; it's important. Point out that if someone logs in as them from the outside and does something bad because they had a crappy password, they will get blamed and fired. Once a year, a compulsory 1 hour session from IT security for all staff will take less time, and achieve more, than making them change their password all the time.&lt;br /&gt;&lt;br /&gt;If you have the need and the budget, and have the infrastructure and skills to support it, then of course OTP systems and/or biometrics will give you a great solution. It's complicated and expensive, but fulfills the requirements really well and takes the role away from the user. &lt;br /&gt;&lt;br /&gt;Comments/flames welcome :-)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2347327864900357747-8798051476123701096?l=blog.olorin.co.uk' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.olorin.co.uk/feeds/8798051476123701096/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=2347327864900357747&amp;postID=8798051476123701096&amp;isPopup=true' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2347327864900357747/posts/default/8798051476123701096'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2347327864900357747/posts/default/8798051476123701096'/><link rel='alternate' type='text/html' href='http://blog.olorin.co.uk/2010/04/aaa-part-1-password-management-myths.html' title='AAA Part 1 - Password Management - myths and a good rant.'/><author><name>Dan Hughes</name><uri>http://www.blogger.com/profile/02863235256629112871</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='15900047760785177687'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2347327864900357747.post-2827642169634810748</id><published>2010-03-25T15:33:00.000Z</published><updated>2010-03-25T15:33:19.887Z</updated><title type='text'>F5 LTM and tcp timouts</title><content type='html'>One of the dangers of being from a pure cisco background is assumption. You treat all devices as if they have the same defaults as 'normal' Cisco devices. I think I'm pretty good at avoiding this, but it gets us all sometimes.&lt;br /&gt;&lt;br /&gt;As we all know, when you run long lived TCP connections through application aware devices, you need to ensure the connection is used.&amp;nbsp;The classic problem is Oracle SQLnet through firewalls, where oracle sets up pools of TCP connections for later use, so that when it gets a burst of traffic it has the connections set up and doesn't need to waste precious milliseconds on TCP handshakes.&lt;br /&gt;&lt;br /&gt;The problem comes, if they remain unused for longer than the TCP session timeout value of the firewall (typically 60 minutes), where the firewall silently drops the connections as being dead, but the client and server think they're still up. Next time one side or the other decides to send a little traffic on one, you get a 'broken socket' error.&lt;br /&gt;&lt;br /&gt;This is normal behaviour, and needs to be taken into consideration whenever you're building systems/applications which connect through firewalls or load balancers.&lt;br /&gt;&lt;br /&gt;Now, lets be clear. The answer to this issue is &lt;b&gt;always&lt;/b&gt; setting a TCP keepalive. Send a packet every minute, and you will never have a problem. Ever. Really, do this. In fact, given you work with such a sensible bunch who will immediately implement this, there's no need to read on.&lt;br /&gt;&lt;br /&gt;Back to F5. Interesting fact of the day, is when you use the F5 LTM for load balancing TCP connections, the default timeout is only 5 minutes - i.e. a TCP connection which does not send a packet for 301 seconds gets dropped. That's not that long, unlike the 60 minutes (3600 seconds) I have in my head from Cisco land. So the whole 'using a TCP keepalive' becomes even more important. Really, you are a crazy person if you don't use a keepalive in this situation. &amp;nbsp;There's really no point reading on. You're not a crazy person, nor is your co-worker who's setting up the app right?&lt;br /&gt;&lt;br /&gt;Still here? OK - there's two ways to know you have this issue - you'll see this as RST packets being sent back to the client from the F5 (which do not come from the 'real' server) when they send traffic on a timed out connection, and also you can see the current connection timers using the '&lt;b&gt;b conn client&lt;/b&gt;' command :&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;[dan@ltm01:Active] ~ # b conn client | grep tcp&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;CONN client 10.1.4.90:1873 server 10.31.8.10:https any protocol tcp &lt;b&gt;age 216&lt;/b&gt; - client: 10.1.4.90:1873&lt;br /&gt;CONN client 10.1.4.90:1876 server 10.31.8.10:https any protocol tcp &lt;b&gt;age 217&lt;/b&gt; - client: 10.1.4.90:1876&lt;br /&gt;CONN client 10.1.4.90:1877 server 10.31.8.10:https any protocol tcp &lt;b&gt;age 238&lt;/b&gt; - client: 10.1.4.90:1877&lt;br /&gt;&lt;br /&gt;You can see even more detail using '&lt;b&gt;b conn client &lt;client ip=""&gt; show all&lt;/client&gt;&lt;/b&gt;' :&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;[dan@ltm01:Active] ~ # &amp;nbsp;b conn client 10.1.4.90 show all&lt;br /&gt;VIRTUAL 10.31.8.10:https &amp;lt;-&amp;gt; NODE any6:any &amp;nbsp; TYPE any&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;CLIENTSIDE 10.1.4.90:1927 &amp;lt;-&amp;gt; 10.31.8.10:https&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;(pkts,bits) in = (71, 16867) &amp;nbsp; out = (122, 139083)&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;SERVERSIDE any6:any &amp;lt;-&amp;gt; any6:any&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;(pkts,bits) in = (0, 0) &amp;nbsp; out = (0, 0)&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;PROTOCOL tcp &amp;nbsp; UNIT 1 &amp;nbsp; &lt;b&gt;IDLE 83 (300) &lt;/b&gt;&amp;nbsp; LASTHOP 8 00:19:a9:f7:c0:00&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;So you can now see what the actual timeout value is for the this connection (83 seconds used from a 300 second timer in this case). This is particularly hand as it shows you if your 'fix' has actually taken.&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;If you do have a crazy person setting up your application, here's how you can be a network hero and 'fix the F5'. Write an iRule with the following content :&lt;br /&gt;&lt;br /&gt;when SERVER_CONNECTED {&lt;br /&gt;IP::idle_timeout 3600&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;and apply to the virtual server. This simply ups the timeout to 1 hr (obviously you can adjust the time to suit your environment). You can actually be quite granular, and set different values for different protocols, check the always useful http://devcentral.f5.com site for more detail, or see &lt;a href="http://devcentral.f5.com/Default.aspx?tabid=63&amp;amp;articleType=ArticleView&amp;amp;articleId=285"&gt;this excellent post&lt;/a&gt;..&lt;br /&gt;&lt;br /&gt;To see the change :&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;[dan@ltm01:Active] ~ # &amp;nbsp;b conn client 10.1.4.90 show all&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;VIRTUAL 10.31.8.10:https &amp;lt;-&amp;gt; NODE any6:any &amp;nbsp; TYPE any&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;CLIENTSIDE 10.1.4.90:1943 &amp;lt;-&amp;gt; 10.31.8.10:https&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;(pkts,bits) in = (83, 18157) &amp;nbsp; out = (165, 188758)&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;SERVERSIDE any6:any &amp;lt;-&amp;gt; any6:any&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;(pkts,bits) in = (0, 0) &amp;nbsp; out = (0, 0)&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;PROTOCOL tcp &amp;nbsp; UNIT 1 &amp;nbsp; IDLE&amp;nbsp;&lt;b&gt;4 (3600)&lt;/b&gt;&amp;nbsp;&amp;nbsp; LASTHOP 8 00:19:a9:f7:c0:00&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Last point on this, as with most iRules, simply applying it to the virtual server doesn't immediately effect current connections. Because the rule starts with 'when SERVER_CONNECTED' - it'll be invoked when a new TCP connection is set up, and the F5 makes the backend connection to the server. You could probably fiddle with this to find other ways to tune when it's started.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2347327864900357747-2827642169634810748?l=blog.olorin.co.uk' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.olorin.co.uk/feeds/2827642169634810748/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=2347327864900357747&amp;postID=2827642169634810748&amp;isPopup=true' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2347327864900357747/posts/default/2827642169634810748'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2347327864900357747/posts/default/2827642169634810748'/><link rel='alternate' type='text/html' href='http://blog.olorin.co.uk/2010/03/f5-ltm-and-tcp-timouts.html' title='F5 LTM and tcp timouts'/><author><name>Dan Hughes</name><uri>http://www.blogger.com/profile/02863235256629112871</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='15900047760785177687'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2347327864900357747.post-5029579588287985227</id><published>2010-03-22T11:18:00.000Z</published><updated>2010-03-22T11:18:11.542Z</updated><title type='text'>Peer Neighbor route</title><content type='html'>This is a useful feature for PPP links where the two ends are not on the same subnet. The most common scenario would be in the use of IP Unnumbered links (although the feature comes from the dial environment). In the scenario of two routers connected via a PPP link with nothing but a loopback (/32) and unnumbered link between them :&lt;br /&gt;&lt;br /&gt;R4# sh ip int brief&lt;br /&gt;Serial1/1                  155.1.254.4     YES TFTP   up                    up      &lt;br /&gt;Loopback10                 155.1.254.4     YES NVRAM  up                    up&lt;br /&gt;&lt;br /&gt;R5#sh ip int brief&lt;br /&gt;Serial1/1                  155.1.254.5     YES TFTP   up                    up      &lt;br /&gt;Loopback10                 155.1.254.5     YES NVRAM  up                    up&lt;br /&gt;&lt;br /&gt;you would expect only one /32 route in each routing table, but :&lt;br /&gt;&lt;br /&gt;R5# show ip route &lt;br /&gt;     155.1.0.0/32 is subnetted, 2 subnets&lt;br /&gt;C       155.1.254.4 is directly connected, Serial1/1&lt;br /&gt;C       155.1.254.5 is directly connected, Loopback10&lt;br /&gt;&lt;br /&gt;R4#sh ip route&lt;br /&gt;     155.1.0.0/32 is subnetted, 2 subnets&lt;br /&gt;C       155.1.254.4 is directly connected, Loopback10&lt;br /&gt;C       155.1.254.5 is directly connected, Serial1/1&lt;br /&gt;&lt;br /&gt;we’ve actually learnt the route from the other end via PPP. It only learns the route of the other end of the link – not remote connected networks. This behaviour is enabled by default, but can be disabled using R5(config-if)#no peer neighbor-route.&lt;br /&gt;&lt;br /&gt;This can be debugged using deb ppp negotiation.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2347327864900357747-5029579588287985227?l=blog.olorin.co.uk' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.olorin.co.uk/feeds/5029579588287985227/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=2347327864900357747&amp;postID=5029579588287985227&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2347327864900357747/posts/default/5029579588287985227'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2347327864900357747/posts/default/5029579588287985227'/><link rel='alternate' type='text/html' href='http://blog.olorin.co.uk/2010/03/peer-neighbor-route.html' title='Peer Neighbor route'/><author><name>Dan Hughes</name><uri>http://www.blogger.com/profile/02863235256629112871</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='15900047760785177687'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2347327864900357747.post-9073023189451662869</id><published>2010-03-16T21:29:00.000Z</published><updated>2010-03-16T21:29:10.840Z</updated><title type='text'>Back to the grind</title><content type='html'>I need to re-certify my CCIE by November. Back to the study again.. Plan so far is read up on my old notes, learn the new subjects, and give it a go and see how I get on. Apparently the new 4.0 exam is bit of a toughie, but hey, I've 6 months..&lt;br /&gt;&lt;br /&gt;Let you know how I get on..&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2347327864900357747-9073023189451662869?l=blog.olorin.co.uk' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.olorin.co.uk/feeds/9073023189451662869/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=2347327864900357747&amp;postID=9073023189451662869&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2347327864900357747/posts/default/9073023189451662869'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2347327864900357747/posts/default/9073023189451662869'/><link rel='alternate' type='text/html' href='http://blog.olorin.co.uk/2010/03/back-to-grind.html' title='Back to the grind'/><author><name>Dan Hughes</name><uri>http://www.blogger.com/profile/02863235256629112871</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='15900047760785177687'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2347327864900357747.post-6802736333697739662</id><published>2010-03-16T21:17:00.000Z</published><updated>2010-03-16T21:17:39.576Z</updated><title type='text'>F5 Virtual Appliance</title><content type='html'>I've been slowly coming around to the F5 way of thinking for a while now. It took a while - mainly because I'm not a coder in any way - and while you slowly start to realize how amazing iRules are the more you use them, to a non-coder it often seems like an awfully complicated way of do some simple things. But you get used to it. &lt;br /&gt;&lt;br /&gt;But F5 has two really good things which Cisco could learn from. Firstly the deventral.f5.com  site. It's a community support forum - and while you can get help for all kinds of things F5 related, it's really about iRules. While most vendors have some equivalent, the great thing with devcentral is F5 encourage their finest geeks to actively post on it. You get really good answers, really quickly. I've been really impressed by it.&lt;br /&gt;&lt;br /&gt;Second (and new) is they've done exactly what everyone is asking Cisco and Juniper to do - and released a performance crippled VM of their product. So you can lab it, play with it, learn the product well. I'm over the moon about this. Now the real test is what they do with the licensing. Currently it's a 90 day trial, which is renewable. You don't need special contracts or be a customer. You can just have one. I understand they intend to release a commercial version for long term dev/staging environments.&lt;br /&gt;&lt;br /&gt;I love this. It means I can learn the product, mess with it, get to know it backwards. That is a good thing for me, for my employer, and for F5.&lt;br /&gt;&lt;br /&gt;This is the opposite of what Cisco are doing. With the new restrictions on IOS licensing, dynamips/GNS3 will slowly become less useful, and I'm going to find it harder to learn the intricacies of their product.&lt;br /&gt;&lt;br /&gt;I really do wonder at the complete disconnect that Cisco seems to have with their user base. It's kinda scary. They need to halve the number of marketing people they have, and start talking to their community. Learn a little from F5. They have the right idea on some things..&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2347327864900357747-6802736333697739662?l=blog.olorin.co.uk' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.olorin.co.uk/feeds/6802736333697739662/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=2347327864900357747&amp;postID=6802736333697739662&amp;isPopup=true' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2347327864900357747/posts/default/6802736333697739662'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2347327864900357747/posts/default/6802736333697739662'/><link rel='alternate' type='text/html' href='http://blog.olorin.co.uk/2010/03/f5-virtual-appliance.html' title='F5 Virtual Appliance'/><author><name>Dan Hughes</name><uri>http://www.blogger.com/profile/02863235256629112871</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='15900047760785177687'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2347327864900357747.post-840881406116614983</id><published>2009-11-26T11:27:00.001Z</published><updated>2009-11-26T11:27:51.353Z</updated><title type='text'>DSL line stats</title><content type='html'>If you've ever had problems with DSL connectivity, here's a great resource for interpreting the output from the line stats: http://www.kitz.co.uk/adsl/linestats.htm&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2347327864900357747-840881406116614983?l=blog.olorin.co.uk' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.olorin.co.uk/feeds/840881406116614983/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=2347327864900357747&amp;postID=840881406116614983&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2347327864900357747/posts/default/840881406116614983'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2347327864900357747/posts/default/840881406116614983'/><link rel='alternate' type='text/html' href='http://blog.olorin.co.uk/2009/11/dsl-line-stats.html' title='DSL line stats'/><author><name>Dan Hughes</name><uri>http://www.blogger.com/profile/02863235256629112871</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='15900047760785177687'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2347327864900357747.post-5756785325548446871</id><published>2009-11-24T17:25:00.000Z</published><updated>2009-11-24T17:25:50.696Z</updated><title type='text'>Backing up an older PIX</title><content type='html'>If you've a PIX running older (6.x) code, and want to get a clean backup of the config (including keys) then here's a useful little command pairing. Firstly set up the location of the TFTP server :&lt;br /&gt;&lt;br /&gt;pix(config)#tftp-server &lt;interface&gt; &lt;IP&gt; &lt;filename&gt;&lt;br /&gt;&lt;br /&gt;so for example to perform the crazy action of an unencrypted 'accross the internet' backup :&lt;br /&gt;&lt;br /&gt;pix(config)#tftp-server outside 11.11.11.11 /pix-config&lt;br /&gt;&lt;br /&gt;Then to backup :&lt;br /&gt;&lt;br /&gt;pix# write net&lt;br /&gt;Building configuration...&lt;br /&gt;TFTP write '/pix-config' at 11.11.11.11 on interface 0&lt;br /&gt;[OK]&lt;br /&gt;&lt;br /&gt;or to merge the current config with a backed up one (i.e. restore to a bare bones device) :&lt;br /&gt;&lt;br /&gt;pix# configure net&lt;br /&gt;&lt;br /&gt;nice eh!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2347327864900357747-5756785325548446871?l=blog.olorin.co.uk' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.olorin.co.uk/feeds/5756785325548446871/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=2347327864900357747&amp;postID=5756785325548446871&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2347327864900357747/posts/default/5756785325548446871'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2347327864900357747/posts/default/5756785325548446871'/><link rel='alternate' type='text/html' href='http://blog.olorin.co.uk/2009/11/backing-up-older-pix.html' title='Backing up an older PIX'/><author><name>Dan Hughes</name><uri>http://www.blogger.com/profile/02863235256629112871</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='15900047760785177687'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2347327864900357747.post-1136753254405388096</id><published>2009-11-03T17:20:00.003Z</published><updated>2009-11-03T17:20:31.125Z</updated><title type='text'>Domain name</title><content type='html'>The sharper of you will note I've finally got around to setting up my domain name to point to this blog. So http://blog.olorin.co.uk we now are..&lt;br /&gt;&lt;br /&gt;Special points to anyone who knows what olorin is &lt;b&gt;without&lt;/b&gt; asking google...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2347327864900357747-1136753254405388096?l=blog.olorin.co.uk' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.olorin.co.uk/feeds/1136753254405388096/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=2347327864900357747&amp;postID=1136753254405388096&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2347327864900357747/posts/default/1136753254405388096'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2347327864900357747/posts/default/1136753254405388096'/><link rel='alternate' type='text/html' href='http://blog.olorin.co.uk/2009/11/domain-name.html' title='Domain name'/><author><name>Dan Hughes</name><uri>http://www.blogger.com/profile/02863235256629112871</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='15900047760785177687'/></author><thr:total>0</thr:total></entry></feed>