import java.util.List; public class IPHash { private List servers; public IPHash(List servers) { this.servers = servers; } public String getNextServer(String clientIp) { int hash = clientIp.hashCode(); int serverIndex = Math.abs(hash) % servers.size(); return servers.get(serverIndex); } public static void main(String[] args) { List servers = List.of("Server1", "Server2", "Server3"); IPHash ipHash = new IPHash(servers); List clientIps = List.of("192.168.0.1", "192.168.0.2", "192.168.0.3"); for (String ip : clientIps) { System.out.println(ip + " is mapped to " + ipHash.getNextServer(ip)); } } }