Домашня » як » Які кроки до пошуку публічної IP-адреси комп'ютера?

    Які кроки до пошуку публічної IP-адреси комп'ютера?

    Можливість отримати доступ до служби, щоб дізнатися вашу загальнодоступну IP-адресу, може бути дуже корисною, але як працює процес? Сьогоднішня стаття SuperUser Q&A має відповідь на запитання цікавого читача.

    Сьогоднішня сесія запитань та відповідей приходить до нас люб'язно SuperUser - підрозділ Stack Exchange, групування веб-сайтів із запитаннями та відповідями на рівні спільноти..

    Знімок вікні Дугласа Портера (Flickr).

    Питання

    Читач SuperUser Гаррі хоче знати, які кроки для пошуку публічної IP-адреси комп'ютера:

    Я знаю про такі послуги, як What is My IP Address, що дозволяє користувачеві знаходити їхні загальнодоступні IP-адреси, але те, що я хотів би знати, це те, як таку службу отримують з нуля? Мені не потрібен сам код, я просто хочу знати поняття та дії (псевдокод, якщо хочете).

    Це те, що я вже знаю про створення такої служби:

    1. Я б створив веб-додаток в Інтернеті, який слухає / для порту 80.
    2. Коли запит надходить, я б перевірив його IP-адресу джерела, а потім упакував, що в добре відформатованому HTML-відповіді для користувача.

    Це що, або тут є щось інше?

    Які кроки до пошуку публічної IP-адреси комп'ютера?

    Відповідь

    Співробітник SuperUser Скотт Чемберлен має відповідь для нас:

    Здебільшого, що ви перерахували - це все, що вам потрібно зробити для базової функціональності.

    Але є ще одна річ, яку ви можете зробити. Ви можете перевірити X-Forwarded-For Заголовок додано деякими проксі-серверами (які використовуються для кешування) та / або балансувальниками завантаження та повідомляють про цю адресу, оскільки адреса, яку ви отримуєте з вихідної адреси, буде адресою проксі, а не користувачем.

    Однак цей заголовок надано користувачем, тому неможливо довести, що адреса вказана в X-Forwarded-For є справжньою вихідною адресою користувача.


    Маєте щось додати до пояснення? Звучить в коментарях. Хочете прочитати більше відповідей від інших технологічних користувачів Stack Exchange? Перегляньте повний потік обговорення тут.