как использовать bash для генерации случайных IP-адресов в Curl

Вы можете сохранить свои аргументы в виде массива:

args=( "$@"  )  # use double quotes
shift 1

if foo; then
  node foo.js "$@"
elif bar; then
  node bar.js "$@"
elif baz; then
  node baz.js "$@"
else
  node default.js "${args[@]}"
fi
5
30.08.2020, 12:00
3 ответа

Вы забыли питона:

$ 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и так далее...

1
18.03.2021, 23:09

Вы неправильно цитируете. Вы можете попробовать:

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-адрес от целевого сайта.

13
18.03.2021, 23:09

Я предложу этот дизайн

shuf -i 0-255 -rn4 | paste -sd.

Но проигрывает printfтак как первое значение в IP не должно быть равно 0

printf %d.%d.%d.%d $((RANDOM%255+1)) $((RANDOM%256)){,,}

Сначала оболочка открывает «Расширение фигурной скобки», а затем подставляет значения переменных

3
18.03.2021, 23:09

Теги

Похожие вопросы