Bugfix for DHCP Relay
Relayed offer/ack should use relay agent IP as source and offered IP as destination
In addition,
- Typo in log message
- Remove unnecessary log
Change-Id: Id6331cc895884cd6025de6040bcf8ea60334ca5c
diff --git a/apps/dhcprelay/src/main/java/org/onosproject/dhcprelay/DhcpRelay.java b/apps/dhcprelay/src/main/java/org/onosproject/dhcprelay/DhcpRelay.java
index 553748a..f274ba0 100644
--- a/apps/dhcprelay/src/main/java/org/onosproject/dhcprelay/DhcpRelay.java
+++ b/apps/dhcprelay/src/main/java/org/onosproject/dhcprelay/DhcpRelay.java
@@ -413,6 +413,11 @@
//set the ethernet frame.
etherReply.setDestinationMACAddress(dhcpPayload.getClientHardwareAddress());
udpPacket.setDestinationPort(UDP.DHCP_CLIENT_PORT);
+ // SRC_IP: relay agent IP
+ // DST_IP: offered IP
+ ipv4Packet.setSourceAddress(relayAgentIP.toInt());
+ ipv4Packet.setDestinationAddress(dhcpPayload.getYourIPAddress());
+
udpPacket.setPayload(dhcpPayload);
ipv4Packet.setPayload(udpPacket);
etherReply.setPayload(ipv4Packet);
diff --git a/apps/segmentrouting/src/main/java/org/onosproject/segmentrouting/IpHandler.java b/apps/segmentrouting/src/main/java/org/onosproject/segmentrouting/IpHandler.java
index 19153b4..00be6f5 100644
--- a/apps/segmentrouting/src/main/java/org/onosproject/segmentrouting/IpHandler.java
+++ b/apps/segmentrouting/src/main/java/org/onosproject/segmentrouting/IpHandler.java
@@ -87,7 +87,7 @@
// IP packets for unknown host
} else {
- log.debug("ICMP request for unknown host {} which is not in the subnet",
+ log.debug("IP request for unknown host {} which is not in the subnet",
destinationAddress);
// Do nothing
}
diff --git a/apps/segmentrouting/src/main/java/org/onosproject/segmentrouting/config/DeviceConfiguration.java b/apps/segmentrouting/src/main/java/org/onosproject/segmentrouting/config/DeviceConfiguration.java
index c2360cb..7eb6894 100644
--- a/apps/segmentrouting/src/main/java/org/onosproject/segmentrouting/config/DeviceConfiguration.java
+++ b/apps/segmentrouting/src/main/java/org/onosproject/segmentrouting/config/DeviceConfiguration.java
@@ -328,9 +328,6 @@
public Set<Ip4Prefix> getSubnets(DeviceId deviceId) {
SegmentRouterInfo srinfo = deviceConfigMap.get(deviceId);
if (srinfo != null) {
- log.trace("getSubnets for device{} is {}", deviceId,
- srinfo.subnets.values());
-
ImmutableSet.Builder<Ip4Prefix> builder = ImmutableSet.builder();
return builder.addAll(srinfo.subnets.values()).build();
}