7 способов получить ваш IP-адрес с примерами кода

В этой статье блога мы рассмотрим различные методы программного получения вашего IP-адреса. Независимо от того, являетесь ли вы разработчиком, желающим интегрировать функциональность IP-адреса в свое приложение, или человеком, интересующимся изучением собственного IP-адреса, эти методы помогут вам в этом. Давайте углубимся и рассмотрим семь различных подходов, а также примеры кода для получения IP-адреса.

  1. Использование библиотеки сокетов Python.
    Библиотека сокетов Python предоставляет простой способ получения вашего IP-адреса. Вот пример фрагмента кода:
import socket
def get_ip_address():
    hostname = socket.gethostname()
    ip_address = socket.gethostbyname(hostname)
    return ip_address
print(get_ip_address())
  1. Использование команды ifconfig (Linux/Mac):
    В системах Linux или macOS вы можете использовать команду ifconfigдля получения своего IP-адреса. Вот пример того, как можно выполнить команду с помощью Python:
import subprocess
def get_ip_address():
    result = subprocess.check_output(['ifconfig'])
    ip_address = result.split(b'\n')[1].split()[1].decode()
    return ip_address
print(get_ip_address())
  1. Использование команды ipconfig (Windows):
    В системах Windows команду ipconfigможно использовать для получения IP-адреса. Вот пример:
import subprocess
def get_ip_address():
    result = subprocess.check_output(['ipconfig'])
    ip_address = result.split(b'\r\n')[5].split()[1].decode()
    return ip_address
print(get_ip_address())
  1. Использование стороннего API.
    Существует несколько сторонних API, которые обеспечивают функцию поиска IP-адреса. Одним из таких популярных API является ipify.org. Вот пример использования библиотеки запросов в Python:
import requests
def get_ip_address():
    response = requests.get('https://api.ipify.org?format=json')
    ip_address = response.json()['ip']
    return ip_address
print(get_ip_address())
  1. Использование JavaScript в веб-браузере.
    Если вы хотите получить IP-адрес с помощью JavaScript в веб-браузере, вы можете использовать API RTCPeerConnection. Вот пример:
function getIPAddress(callback) {
    var RTCPeerConnection = window.RTCPeerConnection || window.mozRTCPeerConnection || window.webkitRTCPeerConnection;
    var pc = new RTCPeerConnection({iceServers:[]});
    pc.createDataChannel('');
    pc.createOffer(function(sdp) {
        pc.setLocalDescription(sdp, function() {}, function() {});
    }, function() {});
    pc.onicecandidate = function(event) {
        if (event.candidate) {
            var ip = event.candidate.candidate.split(' ')[4];
            callback(ip);
            pc.close();
        }
    };
}
getIPAddress(function(ip) {
    console.log(ip);
});
  1. Использование библиотеки Python ipify:
    Библиотека ipify представляет собой оболочку Python для API ipify.org. Это упрощает процесс получения вашего IP-адреса. Вот пример:
from ipify import get_ip
def get_ip_address():
    ip_address = get_ip()
    return ip_address
print(get_ip_address())
  1. Использование команды cURL:
    Если у вас установлен cURL (инструмент командной строки), вы можете использовать его для получения своего IP-адреса. Вот пример:
curl -s https://api.ipify.org

В этой статье мы рассмотрели семь различных способов программного получения вашего IP-адреса. Мы рассмотрели подходы с использованием библиотеки сокетов Python, выполнением системных команд, использованием сторонних API, JavaScript в веб-браузере и даже библиотеки Python, специально разработанной для получения IP-адресов. В зависимости от ваших конкретных требований и среды вы можете выбрать наиболее подходящий метод для простого получения вашего IP-адреса.