At least that is what my trusty Pioneer DVR110 was saying. Lots of ch-chunk noises and nothing else. Luckily it was just a firmware issue. Firmware 1.22 didn’t work but 1.41 did. Upgrade was painless and easy. I recommend you flash your drive to the latest build if you own a Pioneer….
Category: Tech stuff
-
Sipgate, Cisco 1701 router and Cisco 7940
Regular readers or those with the power of search will know I managed to connect a Cisco 7940 to Sipgate. Those who know me in person will know that I changed my router/firewall combination out for a Cisco 1701 and it all stopped working on the Sipgate front.
In short, My Cisco was telling me it was connecting and registered.
SIP Phone> sh reg
LINE REGISTRATION TABLE
Proxy Registration: ENABLED, state: REGISTERED
line APR state         timer      expires    proxy:port
—-Â —Â ————-Â ———-Â ———-Â —————————-
1Â Â Â Â 111Â REGISTEREDÂ Â Â Â 3595Â Â Â Â Â Â Â 3512Â Â Â Â Â Â Â sipgate.co.uk:5060Outbound calling was fine as always. Inbound wasn’t working. Sipgate tech support told me I was not registering at all. Bugger.
Turned out it was down to layer-4 NAT. The Cisco it seems does a better job of dealing with NAT than my sonicwall. The Cisco is able to deal with the NAT translation in SIP messages whilst the Sonicwall I used before didn’t. The solution was simple: turn-off NAT support on the phone.
Dumb Firewall
In sipdefault.cnf, you can configure the phone behind a non-SIP friendly firewall running one-to-one NAT as follows. In effect, the phone sends outbound SIP messages with the public address and leaves the firewall to NAT only the packet source address:
nat_address : 194.223.x.x ; put the public address here nat_received_processing : 0 nat_enable : 0
Smart Firewall
If you do not have a fixed one-to-one NAT on your router and your router is handling layer-4 NAT then change these lines in sipdefault.cnf:
nat_address : "" ; yes. Double quotes, no spaces nat_received_processing : 1 nat_enable : 1
Example Config
For your pleasure and enjoyment, please find enclosed the useful bits from my router and phone configs (shown here in the version where the router doesn’t handle layer-4 SIP NAT and you need to tell the phone the fixed external IP but the router config here can be left unchanged with the phone doing or not doing NAT.)
If you want to use these, copy-paste and make the following search-replacements:
10.x.x.1 – your LAN gateway
10.x.x.2 – your tftp server
10.x.x.3 – your phone ip on the LAN
y.y.y.y the static public IP that your phone is NATted out to
12345 – your sipgate login
sipgatepassword – your erm, password for sipgateSIPDEFAULT.CNF
;begin
dhcp_server : Disabled
my_ip_addr : 10.x.x.3
subnet_mask : 255.255.255.0
defaultgw : 10.x.x.1
dyn_dns_addr_1 : 0.0.0.0
dyn_dns_addr_2 : 0.0.0.0
dns_addr : 208.67.220.220
dns_backup_1: 208.67.222.222
primary_tftp_addr : 10.x.x.2
dyn_tftp_addr : 0.0.0.0
domain_name : simkin.org
Status Flags : 12300001
image_version : P0S3-8-12-00
network_media_type : Auto
network_port2_type : Hub/Switch
phone_password : password
phone_prompt : “SIP Phone”
nat_enable : 0
nat_address : y.y.y.y
voip_control_port : 5060
start_media_port : 16384
end_media_port : 32766
messages_uri : “*97”
preferred_codec : g711ulaw
proxy1_address : “sipgate.co.uk”
proxy1_port : 5060
outbound_proxy : sipgate.co.uk
outbound_proxy_port : 5082
nat_received_processing : 0
;endSIP<MACADDRESS>.CNF
;begin
phone_label : “Orange Teapot ”
line1_name : 12345
line1_authname : 12345
line1_password : sipgatepassword
line1_shortname : 12345
line1_displayname : 12345
line2_displayname : “”
line2_shortname : “”
line2_name: UNPROVISIONED
line2_authname : UNPROVISIONED
line2_password : UNPROVISIONED
;endRunning config on router:
ip inspect max-incomplete low 350
ip inspect max-incomplete high 400
ip inspect one-minute high 1000
ip inspect one-minute low 900
ip inspect tcp max-incomplete host 100 block-time 0
ip inspect name INSPECTOUT sip
ip inspect name INSPECTOUT tcp
ip inspect name INSPECTOUT udp
!
interface FastEthernet0
ip address 10.x.x.1 255.255.255.0
ip accounting output-packets
ip nbar protocol-discovery
ip nat inside
load-interval 30
hold-queue 100 out
!
interface ATM0.1 point-to-point
description Access to DSL Network
ip nat outside
!
interface Virtual-Template1
ip address negotiated
ip access-group ACL101 in
ip nat outside
ip inspect INSPECTOUT out
load-interval 30
!
ip nat inside source static 10.x.x.3 y.y.y.y
!
ip access-list extended ACL101
permit icmp any any echo-reply
permit icmp any any administratively-prohibited
permit icmp any any packet-too-big
permit icmp any any time-exceeded
permit icmp any any unreachable
deny icmp any any
deny tcp any any eq telnet
permit udp any host y.y.y.y eq 5060
deny ip any anyThe “ip inspect” statements do most of the work. The inbound 5060 is possibly not needed but needs to be open so no harm, no foul. I use a fixed one-to-one NAT as it is simple and I have a spare address. It should work with PAT as well but I don’t need that so have not tested for it.
If you get problems, remember a few things:
- Don’t NAT in two places.
- Change the nat_received_processing and nat_enabled values first. Empty the nat_address if you have nat_enable: 1 (i.e. the phone is told that NAT is being handled elsewhere).
- Test using a softphone like Phonerlite without STUN to get your firewall settings right only then try to get the phone working
- The sipgate server shows you register but is only a snapshot. If registration fails or falls over later, you won’t know. Your phone “sh reg” can also be misleading as it is in effect a snapshot from the last attempt which may have been 5 minutes ago.
- Changing phone settings needs a restart. Telnet 10.x.x.3, type your password <cr> reset <cr> and go get another beer
- Registration can be dropped and re-established with “reg 01” and “reg 1 1”
Good luck!
For those wanting to fathom out how to run a phone behind a NAT router without giving it a fixed address, try reading here. (My thoughts are to enable NAT and give out a dyndns name rather than IP in nat_address but I have not tried it yet):
When network address translation (NAT) is enabled, the Cisco SIP IP Phone provides support for SIP messages to traverse NAT/Firewall networks. The Contact and Via headers are modified to reflect the NAT parameters. The Cisco SIP IP Phone can also enable NAT received processing. See the nat_enable, nat_address, and nat_received_processing parameters in the section, "Modifying the Default SIP Configuration File" in Chapter 3, "Managing Cisco SIP IP Phones," at the following URL:http://www.cisco.com/univercd/cc/td/doc/product/voice/c_ipphon/sip7960/sipadm22/index.htm
To quote from that page:
* nat_enable—(Optional) Use 0 to disable network address translation (NAT) and 1 to enable NAT. Default is 0.
When NAT is enabled, the Contact header appears like this:
Contact: sip:lineN_name@nat_address:voip_control_port
If nat_address is invalid or UNPROVISIONED, then the Contact header appears like this:
Contact: sip:lineN_name@phone_ip_address:voip_control_port
and the Via header appears like this:
Via: SIP/2.0/UDP phone_ip_address:voip_control_port
If NAT is enabled, the SDP message uses the nat_address and a RTP port between the start_media_port
and the end_media_port range in the C and M fields. All RTP traffic is sourced from the port advertised
in the SDP.* nat_address—The WAN IP address of the NAT or firewall server. You can use either a dotted IP address or a DNS name.
* nat_received_processing—Use 0 to disable NAT received processing and 1 to enable NAT received processing. Default is 0. If nat_received_processing is enabled, and received= tag is in the Via header of the 200 OK response from a REGISTER, the IP address in the received= tag is used instead of the nat_address in the Contact header.
If this switch occurs, the phone unregisters the old IP address and reregisters with the new IP address.
-
Confessions of a tinkerer
I’m pretty good with computers. I’m usually a bit humble about that kind of thing but in this case it is context for what I’m about to say. You see, I’m frustrated.
I always have a handful of projects on the go. Nothing too stressful. Usually me just tweaking something, modding something or playing with technology I find interesting or think might be useful. Right now though I’m hitting a few walls and can’t find the time or motivation to fix them. The list is short but worth recording:
– My Media Centre keeps waking up at 14:30 every day. Nothing in the powercfg lastwake points to a culprit. I’ve combed through task scheduler and the logs give me no clue. No hardware is set to switch it on. No WOL or BIOS settings. But something is doing it. This post gives some pointers but nothing has helped so far.
– Company of Heroes will not save. There is a known bug when your My Documents folder is on a network share as mine is. But the fix doesn’t work for me. Annoying as it means I have to finish each level in one sitting and hope I don’t make dumb-ass mistakes midway through. [SOLUTION] Contacted forum admin and asked him to correct the bug-fix instructions. Works now but still very slow. 5 minutes to save is better than no save so I’ll put up with it.
– My Thecus N299 keeps locking up. I have the cover off it in case it was heat-related but it tends to only happen when I’m watching a DVD on my Media Centre that was saved to the Thecus. When I try and replicate it, I cannot. But get comfy, sit in front of the TV and hope to watch a movie and it pretty much fails. Tonight it ran two movies flawlessly back to back though. I’m suspecting the CPU is having a fit and have ordered a chipset heatsink which I’ll stick to the little onboard CPU as it won’t hurt. Next step after that is a bigger fan via a dremel-inspired case mod. After that it is a trip to PC World/ebay to get a different NAS. I’d rather spend my money on something more interesting though. [SOLUTION] It turns out that my mail server running Mercury was pounding the NAS. I know this because when I took all the Mercury queues off of the NAS and put them local on the mail server and ran another DVD off of the Thecus, the CPU drops by about 30-50%. Seems fine now. I’m going to fit a heatsink to the processor in the Thecus and mount a thermometer in there too. Possibly unnecessary but the heatsink is £3 and can only make the CPU a bit happier. Look out for a new posting describing the work…. [SOLUTION part 2] Heatsink fitted. Large hole cut in side of the box. 80mm fan fitted along with temporary temperature display. Pictures to follow.
– My Cisco 7940 currently displays a logo which it nabs from a public webserver. I did this to prove the phone and my config was sound. I have a valid image that works on other phones that I cannot display via my home Apache server. Obviously something wrong with Apache and how it talks to the phone. I have the config from a server that can deliver images but I need to compare it with my home server and rest the phone after each change to see what is wrong. Time-consuming and boring.
– My home server was due to be replaced with an ESXi server that I built but my webcam is USB and ESXi doesn’t do USB. So do I buy a Belkin usb network hub, ditch my little shedcam or ditch the ESXi idea? I’m not happy with any of those. [SOLUTION] I bought a Belkin USB network hub. Tip for you if you buy one: When searching for it in the manager app, in the Advanced-> broadcast address field, put the IP address you give the unit NOT your broadcast address.
– I am planning to swap my living room TV for an HD one and need to test my video capabilities of the Media Centre – specifically DVI to HDMI. I have a smaller TV I can play with but it means lugging the TV downstairs and disrupting the house. [PART-SOLUTION] All web servers hosted off-site. Scripts running OK but to my old server. Need to be brave and rack-up the ESX server in the shed and retire the old mail server one night this week….
– WinTV recently stopped giving me a view of what comes out of my Sky+ box. This is a result of the box being swapped out. Or was it?
Sounds like a major whinge and it is. At myself. Must try harder…..
-
Cisco 7940 Sipgate & Sonicwall
Got it working. NAT traversal was the challenge.Now My SIPGate status reads as (Cisco-CP7940G/8.0 IP: sip:1111111@xxx.xxx.xxx.xxx:5060) where 1111111 is my user id and xxx.xxx.xxx.xxx is my external IP address for the phone.
As the Cisco phones do not support STUN, it is easy to make them dial out and even receive calls but you only get to talk if you are dialling out. One-to-One NAT solved the problem for me. (The important commands are nat_enable : 1 and nat_address : xxx.xxx.xxx.xxx)
For the sake of sanity for all those still struggling, here are my settings which I loaded using TFTPD32:
On my sonicwall pro, one-to-one NAT is enabled between 10.1.1.99 and xxx.xxx.xxx.xxx, permit inbound: 5060 UDP for SIP signalling and SIP transformations turned on. No other ports left open
Replace 111111 with your sipgate login
Replace 222222 with your sipgate password
Rename sipxxxx.cnf to match your phone mac address (eg. SIP000B46ABCD12.cnf)
sipdefault.cnf:
;begin
dhcp_server : Disabled
my_ip_addr : 10.1.1.99
subnet_mask : 255.255.255.0
defaultgw : 10.1.1.1
dyn_dns_addr_1 : 0.0.0.0
dyn_dns_addr_2 : 0.0.0.0
dns_addr : 208.67.220.220
dns_backup_1: 208.67.222.222
primary_tftp_addr : 10.1.1.20
dyn_tftp_addr : 0.0.0.0
domain_name : awebsite.org
Status Flags : 12300001
image_version : P0S3-8-12-00
network_media_type : Auto
network_port2_type : Hub/Switch
dscpForAudio : 184
tftp_cfg_dir : ""
phone_password : cisco
phone_prompt : "SIP Phone"
language : english
sntp_mode : Unicast
sntp_server : uk.pool.ntp.org
time_zone : GMT
dst_offset : 1
dst_start_month : March
dst_start_day : 29
dst_start_day_of_week : Sun
dst_start_week_of_month : 8
dst_start_time : 01
dst_stop_month : Oct
dst_stop_day : 25
dst_stop_day_of_week : Sun
dst_stop_week_of_month : 8
dst_stop_time : 02
dst_auto_adjust : 1
time_format_24hr : 1
date_format : D/M/Y
nat_enable : 1
nat_address : 194.223.xxx.xxx ; my external IP address
voip_control_port : 5060
start_media_port : 16384
end_media_port : 32766
sync : "1"
xml_card_dir : ""
xml_card_file : "CARD.XML"
telnet_level : 2
services_url : ""
directory_url : "http://www.awebsite.org/directory.xml"
logo_url : "http://www.awebsite.org/logo.bmp"
http_proxy_addr : UNPROVISIONED
http_proxy_port : 80
garp_enable : 0
enable_vad : 0
dial_template : "dialplan"
callerid_blocking : 0
anonymous_call_block : 0
autocomplete : 1
messages_uri : "*97"
dnd_control : 0
preferred_codec : g711ulaw
dtmf_outofband : none
dtmf_avt_payload : 101
dtmf_db_level : 3
dtmf_inband : 1
call_manager1_addr : "UNPROVISIONED"
call_manager2_addr : "UNPROVISIONED"
call_manager3_addr : "UNPROVISIONED"
call_manager1_sip_port : 5060
call_manager2_sip_port : 5060
call_manager3_sip_port : 5060
call_manager5_addr : "UNPROVISIONED"
call_manager5_sip_port : 5060
call_manager4_addr : "UNPROVISIONED"
call_manager4_sip_port : 0
proxy1_address : "sipgate.co.uk"
proxy2_address : ""
proxy1_port : 5060
proxy2_port : 5060
sip_retx : 10
sip_invite_retx : 6
timer_t1 : 500
timer_t2 : 4000
timer_invite_expires : 180
timer_register_expires : 3600
proxy_register : 1
proxy_backup : ""
proxy_emergency : ""
proxy_backup_port : 5060
proxy_emergency_port : 5060
outbound_proxy : sipgate.co.uk
outbound_proxy_port : 5082
nat_received_processing : 0
call_waiting : 1
user_info : none
cnf_join_enable : 0
remote_party_id : 1
semi_attended_transfer : 0
transfer_onhook_enabled : 0
stutter_msg_waiting : 0
call_stats : 1
local_cfwd_enable : 1
timer_register_delta : 5
sip_max_forwards : 70
rfc_2543_hold : 0
version_stamp : ""
timer_keepalive_expires : 120
;end
sipxxxxxxx.cnf:
;begin
phone_label: "MY PHONE "
line1_name: 111111
line1_authname: 111111
line1_password: 222222
line1_shortname: 111111
line1_displayname: 111111
line2_displayname: â€â€
line2_shortname: â€â€
line2_name: UNPROVISIONED
line2_authname: â€UNPROVISIONEDâ€
line2_password: â€UNPROVISIONEDâ€
phone_password: cisco
logo_url: â€http://www.mysite.com/sipgate.bmpâ€
directory_url: â€http://www.mysite.com/directory.xmlâ€
;end
For those wanting the official view on writing a config, look here.
To know what all the parameters mean, look here.
Seems to work (
). Only trouble is that a valid BMP logo file delivered up by my trusty apache server will not display even though my XML directory works fine.
And when you are ready to really start tweaking, start with this guide. Asterix users may prefer this link.
-
Cisco 7940 Sipgate & Sonicwall
Got it working. NAT traversal was the challenge.Now My SIPGate status reads as (Cisco-CP7940G/8.0 IP: sip:1111111@xxx.xxx.xxx.xxx:5060) where 1111111 is my user id and xxx.xxx.xxx.xxx is my external IP address for the phone.
As the Cisco phones do not support STUN, it is easy to make them dial out and even receive calls but you only get to talk if you are dialling out. One-to-One NAT solved the problem for me. (The important commands are nat_enable : 1 and nat_address : xxx.xxx.xxx.xxx)
For the sake of sanity for all those still struggling, here are my settings which I loaded using TFTPD32:
On my sonicwall pro, one-to-one NAT is enabled between 10.1.1.99 and xxx.xxx.xxx.xxx, permit inbound: 5060 UDP for SIP signalling and SIP transformations turned on. No other ports left open
Replace 111111 with your sipgate login
Replace 222222 with your sipgate password
Rename sipxxxx.cnf to match your phone mac address (eg. SIP000B46ABCD12.cnf)
sipdefault.cnf:;begin
dhcp_server : Disabled
my_ip_addr : 10.1.1.99
subnet_mask : 255.255.255.0
defaultgw : 10.1.1.1
dyn_dns_addr_1 : 0.0.0.0
dyn_dns_addr_2 : 0.0.0.0
dns_addr : 208.67.220.220
dns_backup_1: 208.67.222.222
primary_tftp_addr : 10.1.1.20
dyn_tftp_addr : 0.0.0.0
domain_name : awebsite.org
Status Flags : 12300001
image_version : P0S3-8-12-00
network_media_type : Auto
network_port2_type : Hub/Switch
dscpForAudio : 184
tftp_cfg_dir : ""
phone_password : cisco
phone_prompt : "SIP Phone"
language : english
sntp_mode : Unicast
sntp_server : uk.pool.ntp.org
time_zone : GMT
dst_offset : 1
dst_start_month : March
dst_start_day : 29
dst_start_day_of_week : Sun
dst_start_week_of_month : 8
dst_start_time : 01
dst_stop_month : Oct
dst_stop_day : 25
dst_stop_day_of_week : Sun
dst_stop_week_of_month : 8
dst_stop_time : 02
dst_auto_adjust : 1
time_format_24hr : 1
date_format : D/M/Y
nat_enable : 1
nat_address : 194.223.xxx.xxx ; my external IP address
voip_control_port : 5060
start_media_port : 16384
end_media_port : 32766
sync : "1"
xml_card_dir : ""
xml_card_file : "CARD.XML"
telnet_level : 2
services_url : ""
directory_url : "http://www.awebsite.org/directory.xml"
logo_url : "http://www.awebsite.org/logo.bmp"
http_proxy_addr : UNPROVISIONED
http_proxy_port : 80
garp_enable : 0
enable_vad : 0
dial_template : "dialplan"
callerid_blocking : 0
anonymous_call_block : 0
autocomplete : 1
messages_uri : "*97"
dnd_control : 0
preferred_codec : g711ulaw
dtmf_outofband : none
dtmf_avt_payload : 101
dtmf_db_level : 3
dtmf_inband : 1
call_manager1_addr : "UNPROVISIONED"
call_manager2_addr : "UNPROVISIONED"
call_manager3_addr : "UNPROVISIONED"
call_manager1_sip_port : 5060
call_manager2_sip_port : 5060
call_manager3_sip_port : 5060
call_manager5_addr : "UNPROVISIONED"
call_manager5_sip_port : 5060
call_manager4_addr : "UNPROVISIONED"
call_manager4_sip_port : 0
proxy1_address : "sipgate.co.uk"
proxy2_address : ""
proxy1_port : 5060
proxy2_port : 5060
sip_retx : 10
sip_invite_retx : 6
timer_t1 : 500
timer_t2 : 4000
timer_invite_expires : 180
timer_register_expires : 3600
proxy_register : 1
proxy_backup : ""
proxy_emergency : ""
proxy_backup_port : 5060
proxy_emergency_port : 5060
outbound_proxy : sipgate.co.uk
outbound_proxy_port : 5082
nat_received_processing : 0
call_waiting : 1
user_info : none
cnf_join_enable : 0
remote_party_id : 1
semi_attended_transfer : 0
transfer_onhook_enabled : 0
stutter_msg_waiting : 0
call_stats : 1
local_cfwd_enable : 1
timer_register_delta : 5
sip_max_forwards : 70
rfc_2543_hold : 0
version_stamp : ""
timer_keepalive_expires : 120
;end
sipxxxxxxx.cnf:
;begin
phone_label: "MY PHONE "
line1_name: 111111
line1_authname: 111111
line1_password: 222222
line1_shortname: 111111
line1_displayname: 111111
line2_displayname: ””
line2_shortname: ””
line2_name: UNPROVISIONED
line2_authname: ”UNPROVISIONED”
line2_password: ”UNPROVISIONED”
phone_password: cisco
logo_url: ”http://www.mysite.com/sipgate.bmp”
directory_url: ”http://www.mysite.com/directory.xml”
;end
For those wanting the official view on writing a config, look here.
To know what all the parameters mean, look here.
Seems to work (). Only trouble is that a valid BMP logo file delivered up by my trusty apache server will not display even though my XML directory works fine.
And when you are ready to really start tweaking, start with this guide. Asterix users may prefer this link. -
SIP Gate – Calling 0800 on your Nokia or Cisco 7940…
I bought a Cisco 7940. Why?
Well it was cheap on eBay and I found myself struggling to hear somebody I was troubleshooting for on our DECT phone again the other day. I know from first-hand experience (at work) that the 7940 has excellent speakerphone capability so it works for me.
I still have a mini Asterix server floating about that needs some love but I’m lazy so I’ve signed-up to a SIPGate account. Local number, cheap calls and I should work…
Hang on though, my Nokia N95 supports SIP. Can I get it working with that too? Oh Yes.
That was easy. Just need to get to grips with TFTP again. Luckily, It seems this chap has done it before and left a wonderfully well written recipe.
-
Cisco BGP Exam
I just passed the Cisco BGP 642-661 exam. I’m a mere CCNA still but for another 3 years. Phew!
-
Free Cisco Emulator
At work and occasionally at home I feel the need to try out a bit of Cisco config. Of course, building a lab using multiple physical devices can be a bit of a drag. Luckily, the good old Dynamips tool and the GUI wrapper, GNS3 save a lot of kit lugging.
For a foray into what you can do, delve into the CCIE blog pages here or go download the beast yourself and have a play.
-
ESXi Cloning
ESXi is virtualisation for the enthusiast, the underpaid or tight-fisted. To stop you just installing at and having it all your own way it is limited in what it can do. The limits are generous except for the minor point about a lack of Telnet/SSH support. This means no RCLI. This obviously also means that the power tweakers and tinkerers (like me) are stuck with GUI clicking.
However, a master of the art named Andrew Bradley explains in his blog how to unlock the powers of RCLI and throws in instructions on how to clone your VMs for good measure. What a nice chap!
For the GUI-lovers though, at least you can play with SCP to backup your VMs onto another device. Finally – robust virtual machines for people with servers in their sheds. What do you mean you DON’T have a server in your shed? Oh dear.
So here is how I do it. I do a good build of Windows XP Pro and Ubuntu and save them in a folder called “Templates” I created in datastore1 on the VI Client. Creating a new server from this template goes as follows:
VI Client:
- Go to the Summary tab and right-click the datastore
- Choose browse datastore and the contents are shown
- Create a new folder (e.g. ‘New Server’)
- Use VI Client to copy the VMDK from the template machine to this folder. In this case I’m copying from “\templates\windowsxp.vmdk†to “\New Server\â€
PuTTy
- SSH onto the ESX server directly
- cd ‘/vmfs/volumes/datastore1/New Server’
- mv ‘WindowsXP.vmdk’ ‘New Server.vmdk’
- mv ‘WindowsXP-flat.vmdk’ ‘New Server-flat.vmdk’
- vi ‘New Server.vmdk’
- change the -flat.vmdk filename for the Extent Description to be the new filename
- [Esc] :wq! to save/exit vi
Back to VI Client:
- Create a new custom VM
- Name it the same as your folder name (eg. ‘New Server’)
- When prompted for datastore, choose custom and browse to the newly renamed vmdk
- Finish creating the VM (note: I use buslogic adapters)
- Start the VM
Console tab for your new VM
- Start, Control Panel
- System
- Under the Computer Name tab, click Change
- Give it a new name
- Restart when prompted
All done.
You can obviously copy your VMDK and -flat.VMDK files off to other storage from time to time so long as the VMs are turned-off. Effective if luddite backup….
[UPDATE: Scripted cloning for the lazy is now available: http://www.pgregg.com/projects/vmclone/]