본문으로 바로가기
728x90

일반

 

내 아이피를 확인하는 사이트들 중 한 곳에 대해 요청과 응답입니다. 

import requests

url = 'http://icanhazip.com/'

res = requests.get(url)
print(res.text)
57.14.131.00

 

패키지 설치

 

아이피를 우회할 때 사용하는 tor 라는 패키지를 설치합니다.

sudo apt-get install tor

 

서비스를 확인해봅니다.

sudo systemctl status tor
● tor.service - Anonymizing overlay network for TCP (multi-instance-master)
   Loaded: loaded (/lib/systemd/system/tor.service; enabled; vendor preset: enabled)
   Active: active (exited) since Sun 2020-08-02 19:47:37 CEST; 4min 41s ago
 Main PID: 4236 (code=exited, status=0/SUCCESS)
    Tasks: 0 (limit: 2077)
   Memory: 0B
   CGroup: /system.slice/tor.service

aug 02 19:47:37 raspberrypi systemd[1]: Starting Anonymizing overlay network for TCP (multi-instance-master)...
aug 02 19:47:37 raspberrypi systemd[1]: Started Anonymizing overlay network for TCP (multi-instance-master).

 

열린 포트를 확인해보면 9050 포트가 열립니다.

netstat -antp
127.0.0.1:9050

 

Requests 문서를 참고해보면 requests 모듈에서 socks 프로토콜을 사용하기 위해서는 추가적으로 타사의 라이브러리를 설치해야한다고 설명하고 있습니다.

 

 

Advanced Usage — Requests 2.24.0 documentation

This document covers some of Requests more advanced features. Session Objects The Session object allows you to persist certain parameters across requests. It also persists cookies across all requests made from the Session instance, and will use urllib3’s

requests.readthedocs.io

 

해당 패키지를 설치합니다.

사용할 때는 requests 모듈만 import 해서 사용하면 됩니다.

pip install requests[socks]
Looking in indexes: https://pypi.org/simple, https://www.piwheels.org/simple
Requirement already satisfied: requests[socks] in /usr/lib/python3/dist-packages (2.21.0)
Collecting PySocks!=1.5.7,>=1.5.6 (from requests[socks])
  Downloading https://files.pythonhosted.org/packages/8d/59/b4572118e098ac8e46e399a1dd0f2d85403ce8bbaad9ec79373ed6badaf9/PySocks-1.7.1-py3-none-any.whl
Installing collected packages: PySocks
Successfully installed PySocks-1.7.1

 

아이피 우회

 

proxies 파라미터가 추가된 것을 보실 수 있습니다.

import requests

url = 'http://icanhazip.com/'

proxies = {
    'http': 'socks5://127.0.0.1:9050',
    'https': 'socks5://127.0.0.1:9050',
}

res = requests.get(url, proxies=proxies)
print(res.text)
54.37.71.00

 

tor 서비스를 재시작해서 테스트 해보았습니다.

아이피가 변경되네요.

sudo systemctl restart tor
150.129.8.00