aboutsummaryrefslogtreecommitdiffstats
path: root/generate_mac_address.sh
blob: 0e66e3d61ab88e4fe5d4f574ccb5036f7bce19bd (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
#!/bin/bash

# Generate a pseudo-random MAC address for virtual network devices.
#
# Usage:
#   ./generate_mac_address.sh
#
# @author: <sylvain.herledan@hrafnagud.info>
# @date: 2018-06-19

set -o nounset
set -o errexit
set -o pipefail

readonly ARGS=( "${@}" );

main()
{
  shuf -i 1-127 -n 1 \
    | xargs printf '00:16:3e:%02x'
  shuf -i 1-255 -n 2 \
    | xargs printf ":%02x:%02x\n"
}

main "${ARGS[@]}"
exit 0