diff --git a/extended/test_mac.robot b/extended/test_mac.robot
index 6e3966a..7b3750a 100644
--- a/extended/test_mac.robot
+++ b/extended/test_mac.robot
@@ -125,18 +125,6 @@
     Validate MAC On BMC  ${macaddr}
     Set Suite Variable  ${macaddr}
 
-Validate MAC on BMC
-    [Documentation]  Validate MAC on BMC.
-    [Arguments]  ${mac_addr}
-
-    # Description of argument(s):
-    # mac_addr  MAC address of the BMC.
-
-    ${system_mac}=  Get BMC MAC Address
-
-    Should Contain  ${system_mac}  ${mac_addr}
-    ...  ignore_case=True  msg=MAC address does not exist.
-
 Configure MAC Settings
     [Documentation]  Configure MAC settings.
     [Arguments]  ${mac_addr}  ${expected_result}
diff --git a/extended/test_network.robot b/extended/test_network.robot
index 237ae3b..6008e65 100644
--- a/extended/test_network.robot
+++ b/extended/test_network.robot
@@ -473,17 +473,6 @@
     ...      Should Contain  ${route_info}  ${gateway_ip}
     ...      msg=Gateway IP address not matching.
 
-Validate MAC on BMC
-    [Documentation]  Validate MAC on BMC.
-    [Arguments]  ${macaddr}
-
-    # Description of argument(s):
-    # macaddr  MAC address of the BMC.
-
-    ${system_mac}=  Get BMC MAC Address
-
-    Should Contain  ${system_mac}  ${macaddr}
-    ...  ignore_case=True  msg=MAC address does not exist.
 
 Configure Network Settings
     [Documentation]  Configure network settings.
diff --git a/lib/bmc_network_utils.robot b/lib/bmc_network_utils.robot
index 7946974..41b248c 100644
--- a/lib/bmc_network_utils.robot
+++ b/lib/bmc_network_utils.robot
@@ -3,6 +3,7 @@
 Resource                ../lib/connection_client.robot
 Resource                ../lib/boot_utils.robot
 Library                 ../lib/gen_misc.py
+Library                 ../lib/utils.py
 
 *** Variables ***
 # MAC input from user.
@@ -200,3 +201,17 @@
 
     Fail  msg=No non-pingable IP could be found in subnet ${network_part}.
 
+
+Validate MAC On BMC
+    [Documentation]  Validate MAC on BMC.
+    [Arguments]  ${mac_addr}
+
+    # Description of argument(s):
+    # mac_addr  MAC address of the BMC.
+
+    ${system_mac}=  Get BMC MAC Address
+
+    ${status}=  Compare MAC Address  ${system_mac}  ${mac_addr}
+    Should Be True  ${status}
+    ...  msg=MAC address ${system_mac} does not match ${mac_addr}.
+
diff --git a/lib/utils.py b/lib/utils.py
index e7d6843..2964129 100644
--- a/lib/utils.py
+++ b/lib/utils.py
@@ -198,3 +198,23 @@
 
     return int(out_buf, 16)
 
+def compare_mac_address(sys_mac_addr, user_mac_addr):
+
+    r"""
+    Return 1 if the MAC value matched, otherwise 0.
+
+.   Description of argument(s):
+    sys_mac_addr   A valid system MAC string (e.g. "70:e2:84:14:2a:08")
+    user_mac_addr  A user provided MAC string (e.g. "70:e2:84:14:2a:08")
+    """
+
+    index = 0
+    # Example: ['70', 'e2', '84', '14', '2a', '08']
+    mac_list = user_mac_addr.split(":")
+    for item in sys_mac_addr.split(":"):
+        if int(item, 16) == int(mac_list[index], 16):
+            index = index + 1
+            continue
+        return 0
+
+    return 1
