diff --git a/app/src/main/java/org/opencord/bng/config/PppoeRelayConfig.java b/app/src/main/java/org/opencord/bng/config/PppoeRelayConfig.java
index c094f7f..6ade405 100644
--- a/app/src/main/java/org/opencord/bng/config/PppoeRelayConfig.java
+++ b/app/src/main/java/org/opencord/bng/config/PppoeRelayConfig.java
@@ -16,7 +16,6 @@
 
 package org.opencord.bng.config;
 
-import org.onlab.packet.MacAddress;
 import org.onosproject.core.ApplicationId;
 import org.onosproject.net.ConnectPoint;
 import org.onosproject.net.config.Config;
@@ -29,12 +28,11 @@
 
     private static final String PPPOE_SERVER_CONNECT_POINT = "pppoeServerConnectPoint";
     private static final String OLT_CONNECT_POINT = "oltConnectPoint";
-    private static final String PPPOE_MAC_ADDRESS = "pppoeMacAddress";
 
     @Override
     public boolean isValid() {
-        return hasOnlyFields(PPPOE_SERVER_CONNECT_POINT, OLT_CONNECT_POINT, PPPOE_MAC_ADDRESS) &&
-                hasFields(PPPOE_SERVER_CONNECT_POINT, OLT_CONNECT_POINT, PPPOE_MAC_ADDRESS);
+        return hasOnlyFields(PPPOE_SERVER_CONNECT_POINT, OLT_CONNECT_POINT) &&
+                hasFields(PPPOE_SERVER_CONNECT_POINT, OLT_CONNECT_POINT);
     }
 
     /**
@@ -54,14 +52,5 @@
     public ConnectPoint getAsgToOltConnectPoint() {
         return ConnectPoint.deviceConnectPoint(object.path(OLT_CONNECT_POINT).asText());
     }
-
-    /**
-     * Gets the PPPoE server MAC address.
-     *
-     * @return PPPoE server MAC address
-     */
-    public MacAddress getPppoeMacAddress() {
-        return MacAddress.valueOf(object.path(PPPOE_MAC_ADDRESS).asText());
-    }
 }
 
