Helio Loureiro

-= o cozinheiro de bits =-

Buscando dicas e truques sobre configurações em Unix, Linux, FreeBSD ou OpenBSD? Você pode ter finalmente chegado ao lugar certo :-)

Script para gerar MAC randômico

Image Por motivos bizarros e nada claros para ninguém, resolveram fazer alguma "regra de segurança" na empresa para bloquear as máquina que não estejam rodando Windows Vista. Não que eu seja o único fora do padrão, mas existem os consultores externos que, assim como eu, são lembrados dessa limitação de tempos em tempos.

Como resolvi não perder mais tempo com isso, ou ficar bloqueado durante horário de trabalho sem aviso, e não migrar pro "Vista", resolvi fazer um script que altera meu MAC address da placa de rede a cada boot.

Fiz uma função em shell para poder ser utilizado em qualquer Unix, mas estou rodando em bash e não testei seu funcionamento em /bin/sh e /bin/ksh.


make_mac() {

   mac=""
   for blk in 0 1 2 3 4 5
      do
      for id in 0 1
         do
         macid=`jot -r 1 0 15`
         case $macid in
            10) macid="a";;
            11) macid="b";;
            12) macid="c";;
            13) macid="d";;
            14) macid="e";;
            15) macid="f";;
         esac
         mac="$mac$macid"
      done
      mac="$mac:"
   done

   mac=`echo $mac | sed 's/:$//'`

   if [ ! $mac ]; then
     echo "Failed to generate MAC"
     exit 1
   else
     echo "$mac"
   fi

}

Para utilizar, basta fazer uma chamada como no código abaixo (já adaptado pra Linux e FreeBSD):

mymac=`make_mac`
echo "Using MAC ADDR: $mymac"
case `uname -s` in
   FreeBSD) INTF="bge0"
            ifconfig $INTF lladdr  $mymac 
            ;;
   Linux) INTF="eth0"
          ifconfig $INTF hw ether  $mymac
          ;;
   *) echo "Operating System not supported"
      exit 1
esac
 
Bookmark and Share

Adds

Links patrocinados:

Visitors Counter

Hoje39
Ontem99
Semana512
Mês768
Visitantes137422
38.107.179.206

Statistics

Content View Hits : 151668

Random Image

mvc-95.jpg