Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > C++ Builder > socket no 127.0.0.1 |
Автор: YahоО 19.6.2021, 12:18 | ||
Вопрос про адрес при создании (инициализации) серверного сокета, если указывать не "127.0.0.1" локалхоста, то какой адрес можно указывать? Порт, с портом понятно, какой указать такой и будет, но с адресом и его возможными значениями не понятно. Что вообще означает адрес - мы что можем указать произвольный адрес какого то удаленного и даже очень удаленного сервера в интернете? это разве допустимо? У конкретного адреса в интернете вполне может быть свой серверный сокет на таком же порту, и накладки быть не может, а если там порт до сих пор не задействован то значит как бы можно? А если чужой порт указывать все же нельзя, то зачем указывать его вообще, т.е. он всегда будет своим собственным, так для сервера локалхоста это 127.0.0.1, а для сервера в интернете это его конкретный присвоенный ему айпи. И тут дополнительный вопрос - если домашний пк в сети, тем самым у него уже есть айпи, то запустив короткую программу со своим слушающим сервером к нему уже может прислать запрос иногородний сайт? |
Автор: Oldshelf 19.6.2021, 18:14 |
Плохо разбираюсь в этом вопросе, но выскажу предположение. Допустим, программа запущена на удалённом сервере, у которого есть внешний ip. Тогда при указании "127.0.0.1" она будет слушать внутренние запросы сервера (например, обращения от фронт-энд веб-сервера), а при указании внешнего ip - все запросы, поступающие извне (например, от пользователей, зашедших на сайт). Чужой адрес слушать вряд ли получится. Запросы не будут поступать на сторонний сервер, какой бы адрес он ни слушал. |
Автор: YahоО 21.6.2021, 19:02 |
127.0.0.1 адрес пк «localhost» специальный сетевой интерфейс «внутренней петли», с ним можно "договориться" с помощью С++, в данном случае он не интересен. Но у пк в сети есть внешний адрес, и у С++ есть возможность при создании сокета указать адрес не обязательно 127.0.0.1 «localhost», и пожалуй не обязательно свой внешний адрес, и вопрос мой как раз и касается этого момента. Проверить экспериментом свое предположение не могу, пока что мучаю пхпсокеты и похоже что мой фрихостер не позволяет продвинуться дальше чем: Произошла ошибка: undefined, (Unknown) Соединение с сервером закрыто Обрыв соединения Код: 1006 Поэтому и с сайта прислать запрос на свой пк естественно нет никакой возможности, и тем более указать в пк адрес сервера, да к тому же по всей видимости для проверки потребуется еще какой то дополнительный "независимый" сайт-сервер. |
Автор: _zorn_ 9.7.2021, 13:49 | ||
0.0.0.0 - слушать все сетевые интерфейсы в системе. |