From 48f4ef86eacfb73536b01b6fe3f045b10b53d6d5 Mon Sep 17 00:00:00 2001 From: ligc Date: Mon, 31 May 2010 08:32:19 +0000 Subject: [PATCH] IPv6 tool: convert mac address to link local address git-svn-id: https://svn.code.sf.net/p/xcat/code/xcat-core/trunk@6276 8638fb3e-16cb-4fca-ae20-7b5d299a9bcd --- xCAT-server/share/xcat/tools/mac2linklocal | 53 ++++++++++++++++++++++ 1 file changed, 53 insertions(+) create mode 100755 xCAT-server/share/xcat/tools/mac2linklocal diff --git a/xCAT-server/share/xcat/tools/mac2linklocal b/xCAT-server/share/xcat/tools/mac2linklocal new file mode 100755 index 000000000..377fe446d --- /dev/null +++ b/xCAT-server/share/xcat/tools/mac2linklocal @@ -0,0 +1,53 @@ +#!/usr/bin/env perl +# IBM(c) 2010 EPL license http://www.eclipse.org/legal/epl-v10.html +# +##################################################### +# +# This script will calculate the IPv6 link local address +# from the mac address +# the mac address can be something like +# 00215ea68cd9 or 00:21:5e:a6:8c:d9 +# example mac2linklocal 00215ea68cd9 +# +##################################################### + +BEGIN +{ + $::XCATROOT = $ENV{'XCATROOT'} ? $ENV{'XCATROOT'} : '/opt/xcat'; +} + +use lib "$::XCATROOT/lib/perl"; + +use strict; +use warnings; +use Getopt::Long; +use xCAT::NetworkUtils; + +if ( + !GetOptions("h|help" => \$::HELP, + "m=s" => \$::MACADDR,) + ) +{ + &usage; + exit 1; +} + +if ($::HELP) +{ + &usage; + exit 0; +} + +if ($::MACADDR) +{ + my $linklocal = xCAT::NetworkUtils->linklocaladdr($::MACADDR); + print "$linklocal"; +} + +sub usage +{ + print "Mac to IPv6 link local address utility.\n"; + print "Usage:\n"; + print "\t mac2linklocal -m \n"; + return; +}