IPv6 - как сгенерировать случайный адрес из подсети через bash - random-ipv6-address-generator.sh
Материал из Wiki - Iphoster - the best ever hosting and support. 2005 - 2024
IPv6 - как сгенерировать случайный адрес из подсети через bash - random-ipv6-address-generator.sh
# git clone https://gist.github.com/31b72b51b87311d57f53.git Меняем подсеть: # vi 31b72b51b87311d57f53/random-ipv6-address-generator.sh # bash 31b72b51b87311d57f53/random-ipv6-address-generator.sh
Содержание скрипта:
#Random generator ipv6 addresses within your ipv6 network prefix. #!/usr/local/bin/bash # Copyright # Vladislav V. Prodan # [email protected] # 2011 array=( 1 2 3 4 5 6 7 8 9 0 a b c d e f ) MAXCOUNT=20 count=1 network=2a01:4f8:c012:8022 # your ipv6 network prefix rnd_ip_block () { a=${array[$RANDOM%16]}${array[$RANDOM%16]}${array[$RANDOM%16]}${array[$RANDOM%16]} b=${array[$RANDOM%16]}${array[$RANDOM%16]}${array[$RANDOM%16]}${array[$RANDOM%16]} c=${array[$RANDOM%16]}${array[$RANDOM%16]}${array[$RANDOM%16]}${array[$RANDOM%16]} d=${array[$RANDOM%16]}${array[$RANDOM%16]}${array[$RANDOM%16]}${array[$RANDOM%16]} echo $network:$a:$b:$c:$d } echo "$MAXCOUNT случайных IPv6:" echo "-----------------" while [ "$count" -le $MAXCOUNT ] # Генерация 20 ($MAXCOUNT) случайных чисел. do rnd_ip_block let "count += 1" # Нарастить счетчик. done echo "-----------------"
Пример генерации IPv6 из подсети /64:
20 случайных IPv6: ----------------- 2a01:4f8:c012:8022:1d8f:f12f:49d5:c7b3 2a01:4f8:c012:8022:8489:1a8b:1b6e:91d8 2a01:4f8:c012:8022:e725:14ae:48f3:5876 2a01:4f8:c012:8022:ddb9:31e4:bef7:6ef1 2a01:4f8:c012:8022:75ca:45f0:3bf7:da90 2a01:4f8:c012:8022:5a66:bc13:660c:f219 2a01:4f8:c012:8022:7d81:0a71:05c6:90f9 2a01:4f8:c012:8022:afd3:468d:914d:6bc8 2a01:4f8:c012:8022:29c5:6fb1:fd75:c129 2a01:4f8:c012:8022:fe50:2e9b:3343:e0f5 2a01:4f8:c012:8022:3282:c63c:ac57:0a3d 2a01:4f8:c012:8022:f49c:4adb:a5ac:b3ea 2a01:4f8:c012:8022:70f4:ac6e:edf1:9beb 2a01:4f8:c012:8022:ce7b:802c:8632:b0d3 2a01:4f8:c012:8022:bd3c:fef5:6894:be2f 2a01:4f8:c012:8022:5374:562b:3fb5:6246 2a01:4f8:c012:8022:7a02:3893:6832:9fda 2a01:4f8:c012:8022:2bfa:e252:3696:e7c4 2a01:4f8:c012:8022:db4b:a7d9:2436:d440 2a01:4f8:c012:8022:674d:0563:36d0:d541 -----------------