PHP-сокет с использованием no-ip

Как я могу подключиться через сокет, используя DNS-имя из no-ip? или есть ли способ получить IP от имени no-ip dns?

за работой

$cnt = socket_connect($socket,"100.100.100.100",$port);

но IP динамический.
Мне нужно что-то вроде:

$cnt = socket_connect($socket, "blablabla.ddns.net",$port);

Я пробовал gethostbyname (), но он возвращает один и тот же IP-адрес для всех имен no-ip.

0

Решение

Это решение будет зависеть от вашего сервера, но вы можете использовать собственные возможности операционной системы. Например, большинство установок Linux имеют glibc, позволяя вам запустить команду вроде:

getent hosts blahblabla.ddns.net | awk '{print $1}'

Теперь PHP работает как exec() а также system() можно использовать для запуска подобных вещей.

Например:

$command = 'getent hosts google.com | awk \'{print $1 ; exit}\'';
$ip = exec($command);

Затем используйте IP для подключения к вашей розетке.

НОТА: Пожалуйста, не передавайте вводимые пользователем данные, если вы не хотите, чтобы у вас было плохое время.

РЕКОМЕНДАЦИИ: https://unix.stackexchange.com/questions/20784/how-can-i-resolve-a-hostname-to-an-ip-address-in-a-bash-script

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]