ByteArrayOutputStream baos_temp = new ByteArrayOutputStream();
DataOutputStream dos_temp = new DataOutputStream( baos_temp );
dos_temp.writeByte(0); // resv
dos_temp.writeByte(0); // resv
dos_temp.writeByte(0); // frag (none)
try {
byte[] ip_bytes = HostNameToIPResolver.syncResolve( mapped_ip ).getAddress();
dos_temp.writeByte( ip_bytes.length==4?(byte)1:(byte)4 );