getting Fully Qualified Domain Name (FQDN) ...
/*
Say you want to keep the local copies of documents you download/view online in a directory structure that somewhat resembles the URL path.
When you use firefox as the browser it seems to darken the FQDN, but then you can check it doesn't do it truthfully. Try for example:
~
http://www-hiel.ist.osaka-u.ac.jp/~iizuka/Hiroyuki_Iizuka.html
http://www.c.u-tokyo.ac.jp/eng_site/
~
Why is it that u-tokyo.ac.jp throws an UnknownHostException?
~
lbrtchx
~
*/
import java.net.*;
import java.util.*;
// __
public class GetCanonicalHostName{
public static void main(String[] args){
String[] aHNms = new String[]{"sussex.ac.uk", "ac.uk", "www.mathstat.dal.ca", "mathstat.dal.ca", "dal.ca", "www-hiel.ist.osaka-u.ac.jp", "ist.osaka-u.ac.jp", "osaka-u.ac.jp", "ac.jp" , "www.c.u-tokyo.ac.jp", "c.u-tokyo.ac.jp", "u-tokyo.ac.jp", "hardware.slashdot.org", "slashdot.org"};
// __
InetAddress ia = null;
for(int i = 0; (i < aHNms.length); ++i){
System.out.println("~");
System.out.println("// __ " + aHNms[i] + ":");
System.out.println("~");
try{
ia = InetAddress.getByName(aHNms[i]);
System.out.println(ia.getCanonicalHostName() + ": " + ia.getHostAddress());
}catch(UnknownHostException UnkHX){ UnkHX.printStackTrace(); }
}
System.out.println("~");
}
}
/*
$ java GetCanonicalHostName
~
// __ sussex.ac.uk:
~
139.184.32.141: 139.184.32.141
~
// __ ac.uk:
~
java.net.UnknownHostException: ac.uk
at java.net.Inet6AddressImpl.lookupAllHostAddr(Native Method)
at java.net.InetAddress$1.lookupAllHostAddr(InetAddress.java:867)
at java.net.InetAddress.getAddressFromNameService(InetAddress.java:1246)
at java.net.InetAddress.getAllByName0(InetAddress.java:1197)
at java.net.InetAddress.getAllByName(InetAddress.java:1128)
at java.net.InetAddress.getAllByName(InetAddress.java:1064)
at java.net.InetAddress.getByName(InetAddress.java:1014)
at GetCanonicalHostName.main(GetCanonicalHostName.java:22)
~
// __ www.mathstat.dal.ca:
~
support.MathStat.Dal.Ca: 129.173.118.86
~
// __ mathstat.dal.ca:
~
support.MathStat.Dal.Ca: 129.173.118.86
~
// __ dal.ca:
~
Dal.Ca: 129.173.1.241
~
// __ www-hiel.ist.osaka-u.ac.jp:
~
marino.ise.eng.osaka-u.ac.jp: 133.1.52.68
~
// __ ist.osaka-u.ac.jp:
~
java.net.UnknownHostException: ist.osaka-u.ac.jp
at java.net.Inet6AddressImpl.lookupAllHostAddr(Native Method)
at java.net.InetAddress$1.lookupAllHostAddr(InetAddress.java:867)
at java.net.InetAddress.getAddressFromNameService(InetAddress.java:1246)
at java.net.InetAddress.getAllByName0(InetAddress.java:1197)
at java.net.InetAddress.getAllByName(InetAddress.java:1128)
at java.net.InetAddress.getAllByName(InetAddress.java:1064)
at java.net.InetAddress.getByName(InetAddress.java:1014)
at GetCanonicalHostName.main(GetCanonicalHostName.java:22)
~
// __ osaka-u.ac.jp:
~
java.net.UnknownHostException: osaka-u.ac.jp
at java.net.Inet6AddressImpl.lookupAllHostAddr(Native Method)
at java.net.InetAddress$1.lookupAllHostAddr(InetAddress.java:867)
at java.net.InetAddress.getAddressFromNameService(InetAddress.java:1246)
at java.net.InetAddress.getAllByName0(InetAddress.java:1197)
at java.net.InetAddress.getAllByName(InetAddress.java:1128)
at java.net.InetAddress.getAllByName(InetAddress.java:1064)
at java.net.InetAddress.getByName(InetAddress.java:1014)
at GetCanonicalHostName.main(GetCanonicalHostName.java:22)
~
// __ ac.jp:
~
java.net.UnknownHostException: ac.jp
at java.net.Inet6AddressImpl.lookupAllHostAddr(Native Method)
at java.net.InetAddress$1.lookupAllHostAddr(InetAddress.java:867)
at java.net.InetAddress.getAddressFromNameService(InetAddress.java:1246)
at java.net.InetAddress.getAllByName0(InetAddress.java:1197)
at java.net.InetAddress.getAllByName(InetAddress.java:1128)
at java.net.InetAddress.getAllByName(InetAddress.java:1064)
at java.net.InetAddress.getByName(InetAddress.java:1014)
at GetCanonicalHostName.main(GetCanonicalHostName.java:22)
~
// __ www.c.u-tokyo.ac.jp:
~
park.itc.u-tokyo.ac.jp: 133.11.205.76
~
// __ c.u-tokyo.ac.jp:
~
park.itc.u-tokyo.ac.jp: 133.11.205.76
~
// __ u-tokyo.ac.jp:
~
java.net.UnknownHostException: u-tokyo.ac.jp
at java.net.Inet6AddressImpl.lookupAllHostAddr(Native Method)
at java.net.InetAddress$1.lookupAllHostAddr(InetAddress.java:867)
at java.net.InetAddress.getAddressFromNameService(InetAddress.java:1246)
at java.net.InetAddress.getAllByName0(InetAddress.java:1197)
at java.net.InetAddress.getAllByName(InetAddress.java:1128)
at java.net.InetAddress.getAllByName(InetAddress.java:1064)
at java.net.InetAddress.getByName(InetAddress.java:1014)
at GetCanonicalHostName.main(GetCanonicalHostName.java:22)
~
// __ hardware.slashdot.org:
~
star.slashdot.org: 216.34.181.48
~
// __ slashdot.org:
~
slashdot.org: 216.34.181.45
~
*/