Curl 요청에서 임의의 IP 주소를 사용하는 방법, Curl에서 이 코드를 사용하고 있지만 로컬 IP가 반환됩니다. http://ifconfig.me
printf "%d.%d.%d.%d\n" "$((RANDOM % 256))" "$((RANDOM % 256))" "$((RANDOM % 256))" "$((RANDOM % 256))"
컬에
curl --header 'X-Forwarded-For: printf "%d.%d.%d.%d\n" "$((RANDOM % 256))" "$((RANDOM % 256))" "$((RANDOM % 256))" "$((RANDOM % 256))"' http://ifconfig.me
답변1
당신이 인용한 내용은 잘못되었습니다. 당신은 시도 할 수 있습니다:
curl --header "X-Forwarded-For: $(printf "%d.%d.%d.%d" "$((RANDOM % 256))" "$((RANDOM % 256))" "$((RANDOM % 256))" "$((RANDOM % 256))")"
내부 따옴표를 제거하거나 완전히 제거할 수도 있습니다 printf
.
curl --header "X-Forwarded-for: $((RANDOM % 256)).$((RANDOM % 256)).$((RANDOM % 256)).$((RANDOM % 256))"
그러나 대상 웹사이트가 이를 승인하는지 여부는 X-Forwarded-For
완전히 다른 문제입니다. 이 헤더를 설정해도 실제로 대상 사이트에서 자신의 IP가 숨겨지지는 않습니다.
답변2
이 디자인을 추천드리고 싶습니다
shuf -i 0-255 -rn4 | paste -sd.
printf
하지만 IP의 첫 번째 값이 0이 되어서는 안 되기 때문에 실패합니다.
printf %d.%d.%d.%d $((RANDOM%255+1)) $((RANDOM%256)){,,}
먼저 쉘은 "중괄호 확장"을 켠 다음 변수 값을 바꿉니다.
답변3
Python을 잊어버렸습니다:
$ python3 -c 'import ipaddress; import random; print( str( ipaddress.IPv4Address( random.randint( 0, 4294967295 ) ) ) )'
당신의 경우에는
$ curl --header "X-Forwarded-For: $( python3 -c 'import ipaddress; import random; print( str( ipaddress.IPv4Address( random.randint( 0, 4294967295 ) ) ) )' )" http://ifconfig.me
아름다운 옵션이 많이 있습니다. 바라보다 help( ipaddress )
. ,,, 등을 확인할 수 있습니다 is_global
.is_loopback
is_ipv6
is_subnet