Skip to content

Commit fc8f68d

Browse files
committed
🐛fixed server hostname
1 parent ecfe27b commit fc8f68d

File tree

3 files changed

+40
-2
lines changed

3 files changed

+40
-2
lines changed

openjob-common/src/main/java/io/openjob/common/util/IpUtil.java

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
import java.net.Inet6Address;
66
import java.net.InetAddress;
77
import java.net.NetworkInterface;
8+
import java.net.UnknownHostException;
89
import java.util.ArrayList;
910
import java.util.Enumeration;
1011
import java.util.Iterator;
@@ -90,6 +91,17 @@ public static String getLocalAddress() {
9091
}
9192
}
9293

94+
/**
95+
* Get ip by host
96+
*
97+
* @param host host
98+
* @return String
99+
* @throws UnknownHostException UnknownHostException
100+
*/
101+
public static String getIpByHost(String host) throws UnknownHostException {
102+
return InetAddress.getByName(host).getHostAddress();
103+
}
104+
93105
/**
94106
* Normalize address.
95107
*

openjob-common/src/test/java/io/openjob/common/util/IpUtilTest.java

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,12 @@
11
package io.openjob.common.util;
22

3+
import org.checkerframework.checker.units.qual.A;
34
import org.junit.jupiter.api.Assertions;
45
import org.junit.jupiter.api.Test;
56

7+
import java.net.InetAddress;
8+
import java.net.UnknownHostException;
9+
610
/**
711
* @author stelin swoft@qq.com
812
* @since 1.0.0
@@ -16,4 +20,22 @@ public void testGetLocalIp() {
1620
String formatAddress = IpUtil.getFormatAddress();
1721
Assertions.assertNotNull(formatAddress);
1822
}
23+
24+
@Test
25+
public void testGetIpByHost() throws UnknownHostException {
26+
String ip = IpUtil.getIpByHost("localhost");
27+
Assertions.assertEquals(ip, "127.0.0.1");
28+
29+
String ip2 = IpUtil.getIpByHost("127.0.0.1");
30+
Assertions.assertEquals(ip2, "127.0.0.1");
31+
32+
String ip3 = IpUtil.getIpByHost("github.com");
33+
Assertions.assertNotNull(ip3);
34+
35+
String ip4 = IpUtil.getIpByHost("20.205.243.166");
36+
Assertions.assertEquals(ip4, "20.205.243.166");
37+
38+
String ip5 = IpUtil.getIpByHost("172.20.1.166");
39+
Assertions.assertEquals(ip5, "172.20.1.166");
40+
}
1941
}

openjob-worker/openjob-worker-core/src/main/java/io/openjob/worker/init/WorkerConfig.java

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
import io.openjob.worker.constant.WorkerConstant;
66
import lombok.Getter;
77

8+
import java.net.UnknownHostException;
89
import java.util.Objects;
910
import java.util.concurrent.atomic.AtomicBoolean;
1011

@@ -58,7 +59,7 @@ public class WorkerConfig {
5859
/**
5960
* Init
6061
*/
61-
public void init() {
62+
public void init() throws UnknownHostException {
6263
// Already initialized
6364
if (this.isInit.get()) {
6465
return;
@@ -74,7 +75,10 @@ public void init() {
7475
workerPort = OpenjobConfig.getInteger(WorkerConstant.WORKER_PORT, WorkerConstant.DEFAULT_WORKER_PORT);
7576
workerAddress = String.format("%s:%d", workerHost, workerPort);
7677
delayEnable = OpenjobConfig.getBoolean(WorkerConstant.WORKER_DELAY_ENABLE, false);
77-
serverHost = OpenjobConfig.getString(WorkerConstant.SERVER_HOST, IpUtil.getLocalAddress());
78+
79+
// Server hostname
80+
String serverHostname = OpenjobConfig.getString(WorkerConstant.SERVER_HOST, IpUtil.getLocalAddress());
81+
serverHost = IpUtil.getIpByHost(serverHostname);
7882
serverPort = OpenjobConfig.getInteger(WorkerConstant.SERVER_PORT, WorkerConstant.DEFAULT_SERVER_PORT);
7983

8084
// Initialized

0 commit comments

Comments
 (0)