update 2024-11-27 12:25:35
This commit is contained in:
parent
595befc7e5
commit
f1331b5323
|
@ -3,6 +3,7 @@ import http.server
|
|||
import json
|
||||
import logging
|
||||
import os
|
||||
import socket
|
||||
import socketserver
|
||||
import subprocess
|
||||
import sys
|
||||
|
@ -37,7 +38,11 @@ class MyHandler(http.server.SimpleHTTPRequestHandler):
|
|||
|
||||
|
||||
def start_server():
|
||||
with socketserver.TCPServer(("", PORT), MyHandler, True) as httpd:
|
||||
with socketserver.TCPServer(('', PORT), MyHandler, bind_and_activate=False) as httpd:
|
||||
httpd.socket.setsockopt(socket.IPPROTO_IPV6, socket.IPV6_V6ONLY, 0)
|
||||
httpd.server_bind()
|
||||
httpd.server_activate()
|
||||
print(f"Serving on port {PORT}")
|
||||
httpd.serve_forever()
|
||||
atexit.register(httpd.shutdown)
|
||||
|
||||
|
@ -47,15 +52,14 @@ def start_ua2f(u: str):
|
|||
atexit.register(lambda: p.kill())
|
||||
|
||||
|
||||
# iptables 设置函数
|
||||
def setup_iptables():
|
||||
os.system(f"sudo iptables -A OUTPUT -p tcp --dport {PORT} -j NFQUEUE --queue-num 10010")
|
||||
# os.system(f"sudo ip6tables -A OUTPUT -p tcp --dport {PORT} -j NFQUEUE --queue-num 10010")
|
||||
os.system(f"sudo ip6tables -A OUTPUT -p tcp --dport {PORT} -j NFQUEUE --queue-num 10010")
|
||||
|
||||
|
||||
def cleanup_iptables():
|
||||
os.system(f"sudo iptables -D OUTPUT -p tcp --dport {PORT} -j NFQUEUE --queue-num 10010")
|
||||
# os.system(f"sudo ip6tables -D OUTPUT -p tcp --dport {PORT} -j NFQUEUE --queue-num 10010")
|
||||
os.system(f"sudo ip6tables -D OUTPUT -p tcp --dport {PORT} -j NFQUEUE --queue-num 10010")
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
|
@ -91,13 +95,13 @@ if __name__ == "__main__":
|
|||
assert response.ok
|
||||
assert response.text == str(len(nxt))
|
||||
|
||||
# for i in tqdm(range(2000)):
|
||||
# nxt = ua.random
|
||||
# response = requests.get(f"http://[::1]:{PORT}", headers={
|
||||
# "User-Agent": nxt
|
||||
# })
|
||||
# assert response.ok
|
||||
# assert response.text == str(len(nxt))
|
||||
for i in tqdm(range(2000)):
|
||||
nxt = ua.random
|
||||
response = requests.get(f"http://[::1]:{PORT}", headers={
|
||||
"User-Agent": nxt
|
||||
})
|
||||
assert response.ok
|
||||
assert response.text == str(len(nxt))
|
||||
|
||||
# clean
|
||||
cleanup_iptables()
|
||||
|
|
Loading…
Reference in New Issue