Java获取域名whois的方式

需求:

需要获取域名的whois

实现:

依赖:

<dependency>
	<groupId>commons-net</groupId>
	<artifactId>commons-net</artifactId>
	<version>3.3</version>
</dependency>

代码:

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;
}

 

你可能感兴趣的:(whois)