1、获取IP地址-工具类

  1. /**
  2. * 获取当前服务器IP
  3. */
  4. public class IpUtil {
  5. /**
  6. * 获取本机IP
  7. * @return
  8. * @throws UnknownHostException
  9. */
  10. public static String getLocalIp(){
  11. InetAddress ia = null;
  12. try {
  13. ia = InetAddress.getLocalHost();
  14. } catch (UnknownHostException e) {
  15. e.printStackTrace();
  16. }
  17. return ia.getHostAddress();
  18. }
  19. public static String getLocalAddress() {
  20. try {
  21. InetAddress ip = null;
  22. Enumeration<NetworkInterface> adds = NetworkInterface.getNetworkInterfaces();
  23. while (adds.hasMoreElements()) {
  24. NetworkInterface networkInterface = adds.nextElement();
  25. if (networkInterface.isLoopback()) {
  26. continue;
  27. } else {
  28. Enumeration<InetAddress> addresses = networkInterface.getInetAddresses();
  29. while (addresses.hasMoreElements()) {
  30. ip = addresses.nextElement();
  31. if (ip != null && ip instanceof Inet4Address) {
  32. return ip.getHostAddress();
  33. }
  34. }
  35. }
  36. }
  37. } catch (Exception e) {
  38. return null;
  39. }
  40. return null;
  41. }
  42. public static String getLocalV6Address() {
  43. try {
  44. InetAddress ip = null;
  45. Enumeration<NetworkInterface> adds = NetworkInterface.getNetworkInterfaces();
  46. while (adds.hasMoreElements()) {
  47. NetworkInterface networkInterface = adds.nextElement();
  48. if (networkInterface.isLoopback()) {
  49. continue;
  50. } else {
  51. Enumeration<InetAddress> addresses = networkInterface.getInetAddresses();
  52. while (addresses.hasMoreElements()) {
  53. ip = addresses.nextElement();
  54. if (ip != null && ip instanceof Inet6Address) {
  55. return ip.getHostAddress();
  56. }
  57. }
  58. }
  59. }
  60. } catch (Exception e) {
  61. return null;
  62. }
  63. return null;
  64. }
  65. }