title: IIS Express failing to start on localhost with ipv6
body: <p>Hello fine Stackoverflow users!</p>
  
  <p>Here's something funny that's happened to me - maybe you can explain why?</p>
  
  <p>Half way through my workday yesterday my installation of IIS Express stopped working. </p>
  
  <p>At first I thought it was a problem with the ASP.NET project I was working on, just hanging and failing to start, because the page continued to hang until it timed out. Then I tried some other projects, also set up to run on localhost:8080 - and they wouldn't load either - even plain HTML ones. </p>
  
  <p>Now, when I say that they wouldn't load; I mean no activity at all. The page would "load" in chrome for ages, and the IISExpress console wouldn't register any GET requests, until eventually the tab in chrome would display a timeout error. </p>
  
  <p>This morning, I (with some help) figured something out - for some reason when I pinged <code>localhost</code> the ipv6 address <code>::1:</code> would return instead of the ipv4 address <code>127.0.0.1</code> - I hadn't noticed this behaviour before, and I haven't changed any networking settings. </p>
  
  <p>I edited my HOST file, and included an entry for <code>127.0.0.1 localhost</code> to force <code>ping localhost</code> to return the ipv4 address. This worked, and when I tried IIS Express again binding to localhost:8080 it also worked. </p>
  
  <p><em>My question is</em>; <strong>What On Earth?!?!</strong></p>
  
  <p>I have no idea why this has happened. I know I've managed to fix the individual problem by editing my HOST file, but does anyone know why on earth this would have happened? </p>
  
  <p>Any idea why <code>ping localhost</code> would suddenly start returning the ipv6 address? And any idea why IIS Express wouldn't work with ipv6? (I assume the IIS engine would have that baked in by now). </p>
  
  <p>I'd like to understand what's happened to avoid any further problems, and for curiosities sake.</p>
  
  <p>Thanks in advance for any info,</p>
  
  <p>Phil </p>