• Online Tools
  • - Calculators
    • Character Count
  • - Download
    • TikTok Download
    • DouYin Download
  • - Web Tools
    • BASE64
    • Base64 to Image
    • Image to Base64
    • URL Encoding
    • JavaScript
    • Timestamp
    • Unicode Converter
    • JSON Format
    • Modify Extension
    • Make List
    • CSS Optimizer
  • - Encryption Tools
    • MD5 Encryption
    • Random Generator
  • - Image Tools
    • Image Compression
    • QR Code Generator
    • QR Code Reader
    • Wallpaper Preview
    • Image EXIF
  • - Info Sheets
    • Blood Type Heredity
    • Clothing Sizes
    • app.tool_clock
  • [email protected]
DopuBox
  • English
  • Español
  • Français
  • 日本語
  • 한국어
  • 简体中文
  • 繁體中文
全部 ニュース Meta Code 文化・アート
LinuxがMACアドレスを自動的に生成する様々な方法
2021-12-16

LinuxでMACアドレスを生成する方法はいろいろありますが、一般的なshell生成法のほか、Perl、rubyなどの方法でMACアドレスを生成することもできます。以下、MACアドレスの自動生成方法について簡単にまとめます。

一、shell生成法

shell生成の方法は最も多く、同時に最も簡単で効率的であると感じています。ここでは、いくつかの一般的なツールをランダムに生成する方法を列挙します。

Opensslツール生成

コードは次のとおりです。

  yang@crunchbang:~$ openssl rand -hex 6 | sed ‘s/(。。)/1:/g; s/.$//’

  a0:77:d4:ef:08:7d

  yang@crunchbang:~$ openssl rand 6 | xxd -p | sed ‘s/(。。)/1:/g; s/:$//’

  3b:7f:95:c8:39:6d

od生成

コードは次のとおりです。

  yang@crunchbang:~$ od -An -N10 -x /dev/random | md5sum | sed -r ‘s/^(。{10}).*$/1/; s/([0-9a-f]{2})/1:/g; s/:$//;’

  b0:85:1a:41:b1

  yang@crunchbang:~$

  yang@crunchbang:~$ od /dev/urandom -w6 -tx1 -An|sed -e ‘s/ //’ -e ‘s/ /:/g’|head -n 1

  d8:d3:67:20:c5:f2

forサイクル生成

コードは次のとおりです。

  yang@crunchbang:~$ for i in {1..6}; do printf “%0.2X:” $[ $RANDOM % 0x100 ]; done | sed ‘s/:$/n/’

  8E:9E:FB:AE:FF:D2

  yang@crunchbang:~$ h=0123456789ABCDEF;for c in {1..12};do echo -n ${h:$(($RANDOM%16)):1};if [[ $((c%2)) = 0 && $c != 12 ]];then echo -n :;fi;done;echo

  19:7F:A9:41:E2:20

ここで改めて感嘆すると、言語自体に高級貴賤はなく、shellを軽視してはいけない。shellが実現できるのはなぜperl、python、phpなどで実現しなければならないのか。

二、perl生成法

コードは次のとおりです。

  yang@crunchbang:~$ perl -e ‘printf(“%.2x:”,rand(255))for(1..5);printf(“%.2xn”,rand(255))’

  f8:42:c1:d4:a8:28

  yang@crunchbang:~$ perl -e ‘print join(“:”, map { sprintf “%0.2X”,rand(256) }(1..6))。“n”’

  A7:02:BD:BC:59:E2

perlの強さと簡潔さは論争の余地がない。

三、ruby生成法

コードは次のとおりです。

  yang@crunchbang:~$ ruby -e ‘puts (1..6).map{“%0.2X”%rand(256)}.join(“:”)’

  CD:97:ED:52:B7:F4

ここで使用する方法はperlの方法とほとんど同じです。

四、python生成法

コードは次のとおりです。

  yang@crunchbang:~$ python -c “from itertools import imap; from random import randint; print ‘:’.join([‘%02x’%x for x in imap(lambda x:randint(0,255), range(6))])”

  52:75:80:68:3a:cc

centosとredhatの公式サイトにもpythonスクリプトが表示されます。

コードは次のとおりです。

  #!/usr/bin/python

  # macgen.py script to generate a MAC address for Red Hat Virtualization guests

  #

  import random

  #

  def randomMAC():

  mac = [ 0x00, 0x16, 0x3e,

  random.randint(0x00, 0x7f),

  random.randint(0x00, 0xff),

  random.randint(0x00, 0xff) ]

  return ‘:’.join(map(lambda x: “%02x” % x, mac))

  #

  print randomMAC()

virtinstがあります。utilモジュールの場合、次の簡単な文を使用して新しいmacとuuidを生成することもできます。

コードは次のとおりです。

  #!/usr/bin/env python

  # -*- mode: python; -*-

  print “”

  print “New UUID:”

  import virtinst.util ; print virtinst.util.uuidToString(virtinst.util.randomUUID())

  print “New MAC:”

  import virtinst.util ; print virtinst.util.randomMAC()

  print “”

LinuxがMACアドレスを生成する方法について説明しましたが、本稿では4つの方法でMACアドレスを生成し、好きな方法を選択して自動的にMACアドレスを生成することができます。


ソース元URL:https://dopubox.com/article/p/3634ba81d5ed4700

Other Tools
  • Character Count TikTok Download DouYin Download BASE64 Base64 to Image Image to Base64 URL Encoding JavaScript Timestamp Unicode Converter JSON Format Modify Extension Make List CSS Optimizer MD5 Encryption Random Generator Image Compression QR Code Generator QR Code Reader Wallpaper Preview Image EXIF Blood Type Heredity Clothing Sizes app.tool_clock
  • 英国を代表する作曲家ブリテンが世界平和を願って作った『戦争レクイエム』【クラシック今日は何の日?】
    2024-05-29

    被害者「問題解決には程遠い」 旧ジャニーズ被害者らが会見
    2024-05-29

    “ひばり”の愛称にふさわしい美しいメロディ。ハイドンの『弦楽四重奏曲第67番』【クラシック今日は何の日?】
    2024-05-30

    原作者の意向は取り入れられたと日テレ
    2024-05-30

    元アシスタントが語る Dr.スランプ「あのキャラ」の誕生秘話
    2024-06-01

    吉田南さん、バイオリン部門6位 エリザベート音楽コン、奈良出身
    2024-06-01

    森鷗外の教師像に迫る 研究の「盲点」、記念館で特別展 学生の評判も紹介
    2024-06-01

    知られざる作品や作家との巡り合いが生まれる高円寺のギャラリーショップ。
    2024-06-02

    映像化は「作家の意向第一」と小学館が指針
    2024-06-02

    峰不二子役の増山江威子さん死去 声優、艶ある声でルパン翻弄
    2024-06-03

    「ロバート」秋山さんが鳥取PR イリュージョニストに扮し
    2024-06-04

    レイモンド・ローウィの名言「優れたインダストリアルデザインは、…」【本と名言365】
    2024-06-04

    「ロエベ ファンデーション クラフト プライズ 2024」の大賞が発表。等身大のセラミック彫刻を制作したアンドレス・アンサが受賞
    2024-06-05

    特別展「梅津庸一 クリスタルパレス」が国立国際美術館で開催。00年代からの仕事を総覧
    2024-06-04

    子供と行きたいおすすめ美術館【東京編】。子連れ、親子でアートを楽しもう!
    2024-06-06

    「Osaka Art & Design 2024」(大阪市内)開幕レポート。何気ない日常のなかで多様なカルチャーに触れる
    2024-06-06

    長山智美 デザイン狩人|HAY DOGS♡
    2024-06-06

    佐渡金山「情報照会」と勧告 世界遺産登録に可能性残す
    2024-06-06

    なぜ、いま「先住民の現代アート」なのか? 『美術手帖』2024年7月号は、「先住民の現代アート」特集
    2024-06-06

    佐渡金山、世界遺産登録に向け「追加情報の提出」求められる
    2024-06-06

    ©  Dopu Box
    💛