summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRatan Gupta <ratagupt@in.ibm.com>2017-12-21 08:20:25 +0530
committerBrad Bishop <bradleyb@fuzziesquirrel.com>2018-01-24 13:53:44 +0000
commite962941dec307fbf7048eda52c04c5c494c6967d (patch)
treee111ca93835863897de08f7d3a9d1b849e6b49a7
parent9481230bc7ba5c186bde99719bf5e8a60cac45a5 (diff)
downloadphosphor-networkd-e962941dec307fbf7048eda52c04c5c494c6967d.tar.gz
phosphor-networkd-e962941dec307fbf7048eda52c04c5c494c6967d.zip
Don't handle the ipv6 routing advertisement message
In ipv6 network where ipv6 router is there which keeps advertising the router prefix, as part of handling this message BMC keeps adding the new IP address on the interface which is leading to refresh the network objects periodically. This fix stops accepting the router advertisement messaage. Resolves openbmc/openbmc#2739 Change-Id: I0a4068b5419133a25a2ea3f769f730e73860da50 Signed-off-by: Ratan Gupta <ratagupt@in.ibm.com>
-rw-r--r--ethernet_interface.cpp1
-rw-r--r--network_config.cpp1
-rw-r--r--network_manager_main.cpp6
3 files changed, 8 insertions, 0 deletions
diff --git a/ethernet_interface.cpp b/ethernet_interface.cpp
index f58c752..0721eed 100644
--- a/ethernet_interface.cpp
+++ b/ethernet_interface.cpp
@@ -554,6 +554,7 @@ void EthernetInterface::writeConfigurationFile()
// write the network section
stream << "[" << "Network" << "]\n";
stream << "LinkLocalAddressing=yes\n";
+ stream << "IPv6AcceptRA=false\n";
// Add the VLAN entry
for (const auto& intf: vlanInterfaces)
diff --git a/network_config.cpp b/network_config.cpp
index d0aa2b4..84cf3dc 100644
--- a/network_config.cpp
+++ b/network_config.cpp
@@ -17,6 +17,7 @@ namespace bmc
filestream.open(filename);
filestream << "[Match]\nName=" << interface <<
"\n[Network]\nDHCP=true\nLinkLocalAddressing=yes\n"
+ "IPv6AcceptRA=false\n"
"[DHCP]\nClientIdentifier=mac\n";
filestream.close();
}
diff --git a/network_manager_main.cpp b/network_manager_main.cpp
index a428bce..d13a857 100644
--- a/network_manager_main.cpp
+++ b/network_manager_main.cpp
@@ -124,6 +124,12 @@ int main(int argc, char *argv[])
// will create it.
phosphor::network::restartNetwork();
}
+ else
+ {
+ // this will add the additional fixes which is needed
+ // in the existing network file.
+ phosphor::network::manager->writeToConfigurationFile();
+ }
//RtnetLink socket
phosphor::Descriptor smartSock;
OpenPOWER on IntegriCloud