powered by simpleCommunicator - 2.0.58     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / C++ [игнор отключен] [закрыт для гостей] / Узнать внешний IP адрес и передать его на другой сервер
15 сообщений из 15, страница 1 из 1
Узнать внешний IP адрес и передать его на другой сервер
    #39910477
Qweqwe11
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всем привет!
Необходимо узнать и записать в переменную внешний IP адрес посредством c++ и передать его на другой сервер.
Как это можно реализовать?
ОС FreeBSD, компилятор g++.
...
Рейтинг: 0 / 0
Узнать внешний IP адрес и передать его на другой сервер
    #39910480
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Qweqwe11
внешний IP адрес
адрес чего именно?
...
Рейтинг: 0 / 0
Узнать внешний IP адрес и передать его на другой сервер
    #39910481
Qweqwe11
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
miksoft
Qweqwe11
внешний IP адрес
адрес чего именно?

IP адрес сервера, на котором будет выполняться данный скрипт (вдс или дедик). После получения данного IP адреса, необходимо его отправить на другой сервер
...
Рейтинг: 0 / 0
Узнать внешний IP адрес и передать его на другой сервер
    #39910484
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В общем случае это невозможно или бесполезно, но getaddrinfo() тебе в руки и выбирай сам
какой из 100500 адресов ты будешь отправлять. Я рекомендую 127.0.0.1 - беспроигрышный вариант.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Узнать внешний IP адрес и передать его на другой сервер
    #39910485
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В шелл-скрипте я бы распарсил вывод команды ifconfig
...
Рейтинг: 0 / 0
Узнать внешний IP адрес и передать его на другой сервер
    #39910487
Qweqwe11
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Видел про что-то подобное:
fetch -qo - http://checkip.dyndns.org/ | grep -Eo '\<[[:digit:]]{1,3}(\.[[:digit:]]{1,3}){3}\>'
Но почему-то нет ответа от этой команды.
...
Рейтинг: 0 / 0
Узнать внешний IP адрес и передать его на другой сервер
    #39910501
Фотография полудух
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
какой заумный бэкдор...
...
Рейтинг: 0 / 0
Узнать внешний IP адрес и передать его на другой сервер
    #39910503
x1ca4064
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Qweqwe11

Необходимо узнать и записать в переменную внешний IP адрес посредством c++ и передать его на другой сервер.


А почему "другой сервер" не может определить этот IP адрес сам? С ним связь все равно придется устанавливать.
...
Рейтинг: 0 / 0
Узнать внешний IP адрес и передать его на другой сервер
    #39910513
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Устанавливаешь TCP соединение на внешний сервер и там смотришь откуда оно установлено.
...
Рейтинг: 0 / 0
Узнать внешний IP адрес и передать его на другой сервер
    #39910533
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Любой веб сервер фиксирует адрес входящего.
...
Рейтинг: 0 / 0
Узнать внешний IP адрес и передать его на другой сервер
    #39910538
Qweqwe11
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Можно конкретный пример с кодом?
...
Рейтинг: 0 / 0
Узнать внешний IP адрес и передать его на другой сервер
    #39910540
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Узнать внешний IP адрес и передать его на другой сервер
    #39910562
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Qweqwe11
Можно конкретный пример с кодом?

Самый простой пример кода (проще пареной репы) - это сокет сервер.

Гуглите по ключевым словам socket AND server AND "c++"

Исходников сокет сервера под g++/BSD - вагон и маленькая тележка.
Но в этот форум люди обычно приходят подготовленные. Они пишут свой
исходник и публикуют его и задают по нему вопрос.

И если вы, товарищ не задаёте вопрос по С++ коду то я скорее всего вас
перенесу в форум Вопрос-Ответ который более подходит по тону самого вопроса.
...
Рейтинг: 0 / 0
Узнать внешний IP адрес и передать его на другой сервер
    #39910563
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Qweqwe11Можно конкретный пример с кодом?
А можно увидеть работу Вашего мозга сначала?
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
    sockaddr_storage client_addr;
    socklen_t len = sizeof(client_addr);
    SOCKET ClientSocket = accept(Socket, (sockaddr*)&client_addr, &len);
    if (ClientSocket == INVALID_SOCKET)
        ThrowFmt("Accept error", "System error %d", WSAGetLastError());

    IncomingConnection* newPeer = new IncomingConnection(ClientSocket);

    if (client_addr.ss_family == AF_INET && len == sizeof(sockaddr_in))
    {
        snprintf(newPeer->Name, sizeof(newPeer->Name), "%s:%d",
                 inet_ntoa(reinterpret_cast<sockaddr_in*>(&client_addr)->sin_addr),
                 ntohs(reinterpret_cast<sockaddr_in*>(&client_addr)->sin_port));
    }
    else if (client_addr.ss_family == AF_INET6 && len == sizeof(sockaddr_in6))
    {
        if (inet_ntop(AF_INET6, &reinterpret_cast<sockaddr_in6*>(&client_addr)->sin6_addr, newPeer->Name, sizeof(newPeer->Name)) == nullptr)
        {
            snprintf(newPeer->Name, sizeof(newPeer->Name), "[inet_ntop error %d]", errno);
        }
        char* p = strchr(newPeer->Name, 0);
        snprintf(p, sizeof(newPeer->Name) - (p - newPeer->Name), ":%d", ntohs(reinterpret_cast<sockaddr_in6*>(&client_addr)->sin6_port));
    }
    else
    {
        snprintf(newPeer->Name, sizeof(newPeer->Name), "unknown address of type %d (len %d)", client_addr.ss_family, len);
    }

    Log::Write(3, "Incoming connection %d from %s\n", (int)newPeer->Socket, newPeer->Name);


...
Рейтинг: 0 / 0
Узнать внешний IP адрес и передать его на другой сервер
    #39910588
Фотография Anatoly Moskovsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
curl http://ifconfig.so/



Вам остается написать это же в С++ с использованием libcurl

ЗЫ. Обращения к сайту ifconfig.so лучше кешировать, а то вас забанят ))
...
Рейтинг: 0 / 0
15 сообщений из 15, страница 1 из 1
Форумы / C++ [игнор отключен] [закрыт для гостей] / Узнать внешний IP адрес и передать его на другой сервер
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]