需求:
需要获取域名的whois
实现:
依赖:
commons-net commons-net 3.3
代码:
public String getWhois(String domain) { String whois = StringUtils.EMPTY; try { String server = ""; final int index; String tld = (domain == null || (index = domain.lastIndexOf('.') + 1) < 1) ? domain : (index < (domain.length())) ? domain.substring(index) : ""; if ("com".equals(tld)) { server = "whois.verisign-grs.com"; } else if ("net".equals(tld)) { server = "whois.verisign-grs.com"; } else if ("org".equals(tld)) { server = "whois.pir.org"; } else if ("cn".equals(tld)) { server = "whois.cnnic.cn"; } else if ("jp".equals(tld)) { server = "whois.jprs.jp"; } else if ("kr".equals(tld)) { server = "whois.kr"; } WhoisClient wc = new WhoisClient(); wc.connect(server, 43); whois = wc.query(domain); if (wc.isConnected()) { wc.disconnect(); } } catch (Exception e) { LOGGER.warn("getWhois:" + domain + " exception:" + e.getMessage()); } return whois;}