Я создаю клиент/серверное приложение, которое должно работать в локальной сети.Сокет для динамического IP-адреса
Сначала с RMI зарегистрировать пользователь их я не знаю, что (IP?), Это вопрос :)
После этого я создаю ServerSocket и ждет принять().
Теперь клиент (или, лучше, сервер .. у которого есть зарегистрированный пользователь) хочет установить соединение, но ... что, если IP-адрес был изменен?
Есть способ «зарегистрировать что-то» на сервере, если при изменении IP все продолжают работать?
Я пытаюсь объяснить это лучше: я не могу зарегистрировать IP-адрес и позже подключиться к нему, потому что если изменение IP-адреса я потерял ссылку. Я хотел бы зарегистрировать «что-то», которое является idipendente из IP.
Надеюсь, вы понимаете мой вопрос ..
не могли бы вы дать мне пример? – Mistre83
Если я использую getInetAddresses(). NextElement(). GetHostName(), чтобы получить имя хоста, я получаю что-то вроде этого fe80: 0: 0: 0: 7aca: 39ff: febb: 3b0b% en1, а когда я создаю сокет, это вызывает exception: UnknownHostException: нет такого интерфейса en1. У меня есть компьютер, подключенный к локальной сети, а другой компьютер подключен к Wi-Fi (конечно, они находятся в одной сети) – Mistre83
Во-первых, вам не нужно имя хоста. Просто передайте сам InetAddress и номер порта соответствующему конструктору: открытый Socket (адрес InetAddress, int port) – cpurdy