Я пытаюсь разработать клиент-серверную игру, используя консольную версию VB.NET. Сервер и клиент обмениваются данными с использованием TCP / IP и переадресации портов. Я открываю сервер и клиент на моем компьютере, а затем другой пользователь открывает клиент на другом конце. Я протестировал эту установку, используя два компьютера, оба подключенных к одному и тому же Wi-Fi, и он работал, но он не работал с компьютером друга, я полагаю, потому что я жестко запрограммировал локальный IP-адрес на и клиенты, и сервер. Мне сказали, что мне нужно использовать внешний IP для моего компьютера, когда клиент работает на чужом компьютере. Я бы предпочел не создавать две отдельные клиентские программы: одну с внешним и одну с локальным IP.
Итак, я хочу выбрать мой локальный IP-адрес для подключения всякий раз, когда клиент запускается этим конкретным компьютером, и мой внешний IP-адрес, когда он запускается любым другим компьютером. Есть ли способ сделать это?