Advice for potential eBayers


Click here to buy & sell on eBay!

I have a lot of “stuff” hanging around taking up space, some of which I don’t use (mostly old IT odds and ends, plus some books and videos). Now, some of it turned out to have little or no value (at least commercially), but I have sold some of it on eBay.co.uk.

The trouble is, in my bid to make this stuff attractive (in a market of people selling things for silly money), I didn’t set the postage charges high enough…

I hate it when I buy a £4.99 item and someone charges me £5 to ship it, only to find that they only spent a few pence on postage; so, in a bid to be fair, I weighed the items, looked up the correct prices on the Royal Mail website, and just passed on the Royal Mail costs to my buyers. The trouble is, on a couple of items earlier today, I forgot that the weight of the packaging would push it up into the next bracket (and then there’s the cost of buying a Jiffy bag…). In another (just about to be very expensive) deal which closes in a few minutes time, I only charged £6.95 for up to 2kg by Royal Mail Special Delivery but forgot that whilst that should cover the item, it wouldn’t be enough once I’d added the cables that were also part of the deal and the actual cost to me (as the next price band is up to 10kg) will be £19!

I’ll still make a profit but, when I sell goods for less than I would like (to attract bids), and then don’t add enough to cover my postage and packing costs, I feel a bit stupid. Still, at least it’s better than selling books/videos through Amazon, where they set the postage costs and the seller always seems to lose out.

On top of all this, eBay is not really very user friendly. Sure, it guides you through the process but it takes ages to list a new item and you’re never quite sure what communications the buyer has received from eBay so in a bid to keep my feedback high through excellent customer service, I often find myself contacting the buyer to tell them I’ve shipped it and to ask them to leave feedback if they are happy with the purchase.

I understand that an amazingly high number of people are actually in business selling via eBay. Good luck to them, but for anyone like me who’s just trying to flog their old gear, here’s some advice I’ve worked out over the last few transactions:

  • Use a 10 day auction and time it to cross two weekends to maximise your chances of getting some bids.
  • Make sure your postage and packing charges really will cover your costs.
  • Don’t forget that eBay and PayPal will each take their fees on the transaction.
  • See what other people are selling the same or similar items for (and how much interest they have had) and if you don’t want to let it go that cheaply (or there is no apparent interest), leave it a week or so before advertising at the price you think is fair.
  • Remember that even on second-hand goods, your income from the Internet is taxable (yes, I know, it sucks)!

Good luck!

Migrating physical servers to Microsoft Virtual Server

I’ve spent most of this evening at a Microsoft TechNet UK event where John Howard presented Microsoft’s Virtual Server and Virtual PC products. I’ve blogged about Virtual Server before but something I’ve never seen before is Microsoft’s Virtual Server Migration Toolkit (VSMT).

Available as a free download (although, for some reason, registration is required) and also included within Microsoft automated deployment services (ADS) v1.1, VSMT can be used to migrate from physical to virtual (P2V) hardware, or indeed between virtual servers (V2V) – although that would be easier to achieve by simply copying the configuration files (I guess VSMT could theoretically be used for migrating from a VMware platform to Virtual Server and hence also Virtual PC) – but not from virtual to physical (V2P) hardware.

VSMT moves the entire operating system and installed applications, retaining all identity (SID, MAC address, etc.) intact. Microsoft stress that it is targeted for use by IT Professionals and/or Microsoft consultants as it requires some scripting knowledge as well as DHCP and ADS infrastructures (that caveat seems a little strange to me as I wouldn’t really expect anyone other than IT professionals to be administering virtual servers!).

The various stages of the migration are:

  1. Execute gatherhw.exe on the source computer.
  2. Move the output XML file to the ADS controller.
  3. Execute vmscript.exe against the output XML on the ADS controller to generate custom scripts.
  4. Execute the auto-generated capture.cmd script.
  5. PXE boot the source computer, causing an image to be captured.
  6. Power off the source computer.
  7. Execute the auto-generated createvm.cmd script.
  8. Execute the auto-generated deployvm.cmd script.
  9. Configure virtual machine settings, network storage configuration and virtual machine additions.

VSMT does have some prerequisites in that it requires ADS and Virtual Server 2005 (not Virtual PC 2004). The source machine also has to meet certain requirements:

  • Only Windows NT 4.0 SP6A, Windows 2000 and Windows Server 2003 are officially supported by the tool (although another attendee at the event indicated that Windows XP can also be migrated).
  • A minimum of 96MB physical memory is required (in order for the ADS deployment agent to be loaded). This rises to 160MB if FAT disks are used.
  • Windows management instrumentation (WMI) is also required in order for VSMT to gather information about the hardware. WMI is pre-installed with Windows 2000 and Windows Server 2003 but requires a separate download for Windows NT 4.0.
  • The primary NIC must be pre-boot execution environment (PXE) 0.99c compatible (although PXE boot floppies can be used).

VSMT looks to me to be a fantastic tool for administrators who want to consolidate legacy applications (that perhaps very little is known about and which may be running on aging hardware) onto a single modern virtualised platform, or for moving production servers into a virtualised environment for test and development purposes.

Britains Secret Intelligence Service is not so secret now!

I’m sitting here in my hotel room half-watching Spooks on the BBC, and it reminded me that the British Secret Intelligence Service (MI6) joined the world-wide web community today (Spooks is actually about the British Security Service – MI5, but that’s close enough).

Not bad for an organisation that the very existence of was officially denied until 10 years ago!

Setting up IP forwarding on a Windows network

My network at home has two subnets joined by a wireless link (note that the IP addresses have been changed to protect the innocent):

IP forwarding

You might wonder why it doesn’t all sit under my desk (after all we’re not talking about a multinational corporation here) but the simple fact is that most of my kit has been procured from an eclectic mix of sources over the years (so it is hardly what you might call standard) and the server (on which I do a lot of testing) is a noisy beast, as is the 24-port switch that it’s plugged into – hence the reason they are stored away in the basement.

The trouble with this configuration is that the dual-homed PC which acts as a bridge between the wired and wireless segments in the basement is exactly that – dual-homed – i.e. it needs the 802.3 adapter to be on one subnet and the 802.11b adapter to be on another (otherwise this could all have been on one flat subnet). That means that it also needs to be able to route traffic to and from each subnet, otherwise the server is invisible to the rest of the network (and vice versa).

That’s where IP forwarding comes in (aka IP masquerading in Linux-speak).

Disabled by default in Windows 2000, XP and Server 2003, IP forwarding basically allows a dual-homed host to act as a network bridge. Microsoft knowledge base article 323339 details the registry setting to enable this on Windows Server 2003 – there are other articles for Windows 2000 and XP but they are pretty much identical.

There are, however, a couple of important points to note:

  • Only one interface should have a default gateway. In my case, the default gateway for the bridge’s wired connection is blank.
  • I also had to put a static route to 192.168.2.0/24 on my ADSL router using the IP address of the bridge’s wireless connection as a gateway (so that outbound traffic to the Internet from the 192.168.2.x network has a return path).

For comparison purposes, the routing table on my bridge (192.168.1.50/192.168.2.50) looks like this:

IPv4 Route Table
===========================================================================
Interface List
0x1 ........................... MS TCP Loopback interface
0x10003 ...00 08 02 xx xx xx ...... Intel(R) PRO/100 VM Network Connection
0x10004 ...00 80 c8 xx xx xx ...... D-Link AirPlus DWL-520+ Wireless PCI Adapter
===========================================================================
===========================================================================
Active Routes:
Network Destination Netmask Gateway Interface Metric
0.0.0.0 0.0.0.0 192.168.1.1 192.168.1.50 25
127.0.0.0 255.0.0.0 127.0.0.1 127.0.0.1 1
192.168.1.0 255.255.255.0 192.168.1.50 192.168.1.50 25
192.168.1.50 255.255.255.255 127.0.0.1 127.0.0.1 25
192.168.1.255 255.255.255.255 192.168.1.50 192.168.1.50 25
192.168.2.0 255.255.255.0 192.168.2.50 192.168.2.50 20
192.168.2.50 255.255.255.255 127.0.0.1 127.0.0.1 20
192.168.2.255 255.255.255.255 192.168.2.50 192.168.2.50 20
224.0.0.0 240.0.0.0 192.168.1.50 192.168.1.50 25
224.0.0.0 240.0.0.0 192.168.2.50 192.168.2.50 20
255.255.255.255 255.255.255.255 192.168.1.50 192.168.1.50 1
255.255.255.255 255.255.255.255 192.168.2.50 192.168.2.50 1
Default Gateway: 192.168.1.1
===========================================================================
Persistent Routes:
None

Whilst on the ADSL router it looks like this:

Network Destination Netmask NextHop IF Type Origin
0.0.0.0 0.0.0.0 isprouter ppp-0 Indirect Dynamic
127.0.0.0 255.0.0.0 127.0.0.1 lo-0 Direct Dynamic
192.168.1.0 255.255.255.0 192.168.1.1 eth-0 Direct Dynamic
192.168.1.1 255.255.255.255 127.0.0.1 lo-0 Direct Dynamic
192.168.2.0 255.255.255.0 192.168.1.50 eth-0 Indirect Local
isprouter 255.255.255.255 mypublicipaddress ppp-0 Direct Dynamic
mypublicipaddress 255.255.255.255 127.0.0.1 lo-0 Direct Dynamic
btrouter1 255.255.255.255 btrouter2 ppp-0 Direct Dynamic

For the other LAN-connected devices, the important details are that for LAN 1 the default gateway is 192.168.1.1 and for LAN 2 the default gateway is 192.168.2.50.

Migrating DHCP databases between Windows servers

One side effect of rebuilding the server that runs pretty much everything on my home network was that I had to migrate the DHCP database (twice – first to a virtual machine operating as a temporary server, and then back to the original hardware after it had been rebuilt).

I knew that it was possible (I did it from NT 4.0 to Windows 2000 for a client few years back) but hadn’t done it recently.

It turned out to be pretty straightforward – all of the details are in Microsoft knowledge base article 325473 but basically on the source (Windows 2000 Server) server, stop the DHCP service and use jetpack.exe to tidy up the database, then use the DHCP database export/import resource kit tool (dhcpexim.exe) to dump the database and finally import it on the target (Windows Server 2003) server using the network shell (netsh.exe). The second migration was even quicker – for a Windows Server 2003 source and target it just involves a couple of netsh commands. Finally, don’t forget to disable redundant DHCP services (or deauthorise the servers in Active Directory) to prevent multiple DHCP servers from servicing clients simultaneously.

Using netsh to set multiple DNS server addresses in Windows

During my recent two days of torment caused by a flaky Java application, I had to change the preferred and alternate DNS server entries for one of my network cards. Ordinarily that would be simple, but with an unresponsive Explorer interface refusing to open any network connection dialogs I needed to do it from the command line.

Enter the network shell (netsh) – a fantastic command line utility that has sneaked into recent versions of Windows and seems to have more and more functionality added with each new release.

After entering the netsh shell, interface ip got me to the TCP/IP interface settings; then show dns gave me the details of the current DNS servers; set dns "Local Area Connection" ipaddress allowed me to set the preferred DNS server and add dns "Local Area Connection" ipaddress index=2 set the alternate DNS server (that was the difficult one to work out – I had tried to set dns with a list of IP addresses but that does not work!); finally, exit the network shell and type ipconfig -all to check settings the normal way.

I love the command prompt!

This is why I’m not a fan of Java

I just wasted 2 days (one of which was on my weekend), and a lot of sleep, trying to work out why I couldn’t upgrade the Windows 2000 server which looks after my domain, DHCP, RIS, SUS and a whole load of other bits at home.

Every time I tried to run Windows Server 2003 setup it seemed to hang – and everything else was pretty slow too. I had to launch control panel applets using their .cpl filenames (e.g. appwiz.cpl for the Add or Remove Programs applet) and services would not stop cleanly.

I decided that my system was badly broken and quickly built a virtual machine on another piece of hardware, promoting that to a domain controller to provide a live backup of Active Directory. As in-place upgrades weren’t working, I resigned myself to the fact that I was going to have to migrate everything to the virtual server, then rebuild the original box but I wanted to cleanly remove the original domain controller from the directory.

Every time I ran the Active Directory installation wizard (dcpromo.exe) it failed – usually with the following error.

Active Directory Installation Failed

The operation failed because:

Failed to prepare for or remove the sysvol replication “The file replication service cannot be stopped.”

(Even though logged events with IDs 13502 and 13503 suggested that the FRS had indeed stopped).

Microsoft knowledge base article 332199 led me to try the dcpromo /forceremoval command but that failed in exactly the same way. I ran dcdiag /s:localhost on each server to look for any issues, checked that each server could ping the other one, that net view \\servername returned a list of shares, and all required DNS entries were present. I checked the DNS settings (to make sure that each server was using itself as the primary DNS server and the other domain controller as a secondary) and restarted just to be sure but all to no avail.

To cut a long story short, I found the answer purely by fluke. I couldn’t get the DHCP server service to stop cleanly (to let me migrate the database to my virtual machine) so I did a Google search for “windows services hang on stop”. This turned up a TechRepublic thread titled APC Java issues cause services to hang. I realised that I do have an APC UPS attached to the server, and that I was using a version of PowerChute Business Edition (PBE) that had been sitting there happily for a couple of years (v6.2.2) – I hadn’t upgraded to 7.x as recommended by APC knowledge base article 7202 because APC had never e-mailed me to notify me of a problem and services that aren’t broken (and that don’t have an inbuilt patching mechanism) generally get left well alone on my systems!

Lo and behold, the APC services had hung on startup and there were various events logged with ID 7022 (the APC PBE Agent service hung on starting). I disabled both the APC PBE client and server services, using the registry (as the services console was inoperable) to locate HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\servicename\ and set Start to 0x00000004 for disabled (0x00000002 is automatic and 0x00000003 is manual), restarted the server and had the fastest boot sequence in days! My Windows installation was responsive again and I was able to remove the offending applications in a few short clicks.

My problems were nothing to do with Active Directory, DNS or even Windows – they all boiled down to an expired Sun Java Runtime Environment (JRE) certificate and sloppy coding from APC which meant that if their services hung, then so did all subsequent ones. I’ve never been a fan of Java applications on Windows – generally they are slow and have a poor user interface – and this experience has done nothing to change my mind.

Once the APC PBE agent, client and server had been removed, I was able to successfully (and cleanly) demote the original domain controller (avoiding having to follow the steps in Microsoft knowledge base article 216498 to remove data left in the directory after an unsuccessful demotion) but having migrated all the services to my virtual machine, I decided to go ahead and perform a clean installation of Windows on the original hardware anyway. I’m currently mid-way through patching the rebuilt server but I’m so glad that P McGrath from Rocky Mount, VA posted his experience on TechRepublic and Google did it’s thing.

Remind me again – how did we ever manage to find things out before we had the web?

My two minutes of fame

I was on the telly today!

It all started a week or so back, when I read my regular e-mail up date from the BBC Working Lunch programme and saw this:

WORKING LUNCH NEEDS YOU!
Some of you have told us about incidents of falling slightly into overdraft and then being hit by disproportionate penalties from your bank. If you’re in the same boat we want to hear from you.

I had exactly that experience a few weeks back and so I dropped them a quick e-mail, never expecting to hear anything more. Then this morning, I got a call from one of the producers – they wanted to interview me and asked if I could come in to a local studio for a live link up!

After a couple of quick calls to clear it with my bosses (nothing about IT, no links to my employer, only an hour out of my day – call it my lunch break), I was off to the BBC’s Northampton studios. Everything seemed to go okay although I was thinking that I probably sounded like a right bumbling fool because the link from Northampton to London went via Cambridge and Norwich making my voice echo in my earpiece (which is really distracting). Then when I got home I saw this on the Working Lunch website [my underlining]:

Screen shot from the BBC Working Lunch website

“One viewer’s unfair bank charges” – that’s little Me! I thought they’d have loads of stories and I’d be the good news one because First Direct did at least drop the extortionate £105 they charged us for a minor error on our part. Imagine my surprise when I was featured in the very first piece on today’s show!).

None of this is anything to do with technology – but it did make me happy! The next bit is the techie thing (and hence the reason for blogging it here)…

Of course, I recorded the programme but only on VHS cassette which is not fantastic quality so I decided to find out how to get the online version down to my PC (the show is available on the web for 24 hours after broadcast, but only as a Real Media stream). Thanks to the advice on Swen’s Blog, I have a copy of my two minutes of fame to keep for all time (although I still need to convert the .RM file to something which doesn’t need a bug-ridden piece of spyware to read it).

One view on organising digital photos

I’m really bad at organising my digital photos. I’m paranoid about losing irreplaceable photos (like the ones of my son as he grows up fast) and end up copying them to a variety of locations, but I’m not as smart about it as I should be.

In this week’s Connected Home Media update, Paul Thurrott writes about getting organised with digital photography using nothing more than the features within Windows XP. Not everyone will agree that this is how to do it (especially those with a commitment to third party applications which work for them) but its an interesting read, and will probably work for anyone who doesn’t have massive requirements for their digital workflow.

Is the release of Windows XP service pack 3 imminent?

I heard a rumour yesterday that Windows XP service pack 3 (SP3) will be released soon. I haven’t been able to substantiate it yet, but it does sound plausible.

It’s been over a year since SP2 was released and, because it was such a massive update, many organisations still haven’t adopted it because they are worried about the impact that the new security features will have on their infrastructure.

I guess because we’ve heard so little about SP3, when it arrives we can expect it to consist basically of a rollup of hotfixes since SP2, plus SP2 itself; but its arrival will mean is that, based on the Microsoft support lifecycle, SP1 will effectively be out of support. Now’s the time to think seriously about SP2/3 adoption!