collisions

Command to detect and prevent collisions of MAC addresses or host IDs used by logical domains managed by Oracle Enterprise Manager Ops Center.

Synopsis

list -t|--type all|hostid|macaddress [-f|--file filename]
check -t|--type  -v|--values value[,value2,...,valueN]
allocate -n|--size number -r|--range manual|auto

Description

This module is about detecting collisions of host IDs and MAC addresses used by logical domains managed by Oracle Enterprise Manager Ops Center. A collision is an occurrence of a duplicated host ID or MAC address used by two or more logical domains.

You can run this command to detect host ID or MAC address collisions of logical domains existing in the Enterprise Controller.

This command also allows you to detect if specific host IDs or MAC addresses collide with host IDs or MAC addresses used by logical domains inside the Enterprise Controller. This functionality is specially useful to prevent collisions before adding logical domains created outside of Enterprise Manager Ops Center. You can either provide a file containing data of the logical domains or provide the host IDs or MAC addresses as part of the command.

Additionally, you can reserve a number of MAC addresses from a specified range. You can use the reserved MAC addresses to assign them to a future logical domain to guarantee it will not collide with other MAC address used inside the Enterprise Controller.

SubCommands

list -t|--type collision_type [-f|--file filename]

Lists all detected host ID or MAC address collisions of logical domains existing in the Enterprise Controller. Use the -f|--file option to provide data of logical domains to check them for possible collisions against host IDs or MAC addresses used by logical domains inside the Enterprise Controller.

You can run the script /opt/sun/n1gc/bin/read_mac on Oracle VM for SPARC control domains to collect their logical domains data. You can send the output of the script to a file and then use that file as part of the -f|--file option.

check -t|--type collision_type -v|--values value[value2,..valueN]

Verifies if the specified host IDs or MAC addresses collide with a host ID or MAC address used by logical domains inside the Enterprise Controller. This command identifies different level of collisions:

  • Severe – For host ID collisions between two or more logical domains.

  • Warning – For MAC address collisions between two or more vnets of logical domains, including alternate MAC addresses of the vnets.

  • Info – For MAC address collisions between vnets of logical domains and logical domain MAC addresses.

allocate -n|--size number -r|--range manual|auto

Reserves a number MAC addresses from a MAC address network range. You can reserve MAC addressed from the manual or automatic range.

Options

-f|--file

Option to specify the name of the file containing the data of logical domains to detect possible collisions with host IDs and MAC addresses used by logical domains inside the Enterprise Controller.

-n|--size

Number of MAC addresses to reserve.

-r|--range

MAC address range from which a MAC addresses are reserved. Valid values are auto or manual.

-t|--type

Specifies the type of collisions to detect based on host ID, MAC address, or both.

-v|--value

List of host IDs or MAC addresses to check for collisions.

Operands

collision_type

The type of collision to detect. When used with the list command, valid values are all, hostid, and macaddress. If used with the check command, valid values are hostid or macaddress.

filename

Name of the file containing the logical domains data for detecting possible collisions with MAC addresses or host IDs used by logical domains inside the Enterprise Controller.

You can run the script /opt/sun/n1gc/bin/read_mac on Oracle VM for SPARC control domains to collect their logical domains data and send the output of the script to a file, then use that file as part of the -f|--file option of the list command.

The following is an example of the file:

# cat /tmp/dumpldom.txt
14b2d04d-01e0-cec0-e1ef-85152b04d749.primary.uuid=14b2d04d-01e0-cec0-e1ef-85152b04d749
14b2d04d-01e0-cec0-e1ef-85152b04d749.primary.domainname=primary
14b2d04d-01e0-cec0-e1ef-85152b04d749.primary.hostid=0x8620d46a
14b2d04d-01e0-cec0-e1ef-85152b04d749.primary.domainmacaddress=00:10:e0:20:d4:6a
14b2d04d-01e0-cec0-e1ef-85152b04d749.primary.macaddresses=00:14:4f:f9:65:c9,00:14:4f:fa:3d:bf,00:14:4f:f8:02:15,00:14:4f:f8:94:9b
14b2d04d-01e0-cec0-e1ef-85152b04d749.primary.server=xvmt-3-n123
1e9b224b-0f8f-cbfb-ce28-dd6601fdb3d2.guest-1.uuid=1e9b224b-0f8f-cbfb-ce28-dd6601fdb3d2
1e9b224b-0f8f-cbfb-ce28-dd6601fdb3d2.guest-1.domainname=guest-1
1e9b224b-0f8f-cbfb-ce28-dd6601fdb3d2.guest-1.hostid=0x84f9ca04
1e9b224b-0f8f-cbfb-ce28-dd6601fdb3d2.guest-1.domainmacaddress=00:14:4f:f9:ca:04
1e9b224b-0f8f-cbfb-ce28-dd6601fdb3d2.guest-1.macaddresses=00:14:4f:fa:c9:13,00:14:4f:f9:a1:9b
1e9b224b-0f8f-cbfb-ce28-dd6601fdb3d2.guest-1.server=xvmt-3-n123
number

Number of MAC addresses to reserve.

range_pool

Type of the pool range from which the MAC addresses are reserved. Valid values are auto and manual.

value

Host IDs or MAC addresses for detecting possible collisions against them.

Examples

Example 1   Verify if collisions exist for the host IDs specified in the file
xvmSh/collisions > list -t hostid -f ./dumpldoms.txt
Collision on hostid 84ffb4b4  :
server         |  name     |               UUID                 |        MAC   |
----------------------------------------------------------------------------------
foo.example.com|ldom_guest |a2478fdd-62f8-c4af-afdd-e2d93cc93abb|00:14:4F:FB:5D:0E
foo.example.com|guest-inte |544fe468-90a8-66ce-990f-bb4b79842fa9|00:14:4F:FA:2D:E1
foo.example.com|ldom_guest1|7db50419-d46d-4351-b7f7-ba7d5f1c76fd|00:14:4F:FF:B4:B4
Example 2   Verify if collisions exist for the specific MAC addresses
xvmSh/collisions > check -t maccaddress -v 0:14:4F:FB:5D:0E,00:14:4F:FA:2D:E1
Collision Level - INFO :
 server        | name        |                  UUID            |    MAC         |
----------------------------------------------------------------------------------
foo.example.com|ldom_guest |a2478fdd-62f8-c4af-afdd-e2d93cc93abb|00:14:4F:FB:5D:0E
foo.example.com|ldom_guest2|3c526eeb-f38c-c169-ed1c-88a0825e7a38|00:14:4F:FB:5D:0E

Example 3   Reserve two MAC addresses
xvmSh/collisions > allocate -n 2 -range manual
Allocated MAC addresses:
       MAC Address       |
--------------------------
    00:14:4F:FD:5C:AD
    00:14:4F:FF:05:E5