Ipv6NodeConfigurator¶
Package: inet.networklayer.configurator.ipv6
simple module Ipv6NodeConfigurator
Configures the containing network node using information provided by the network’s global configurator module Ipv6NetworkConfigurator.
Ipv6NetworkConfigurator only computes and remembers configuration data (assigned IPv6 addresses, static routes, etc), but doesn’t configure the nodes’ routing tables and interfaces accordingly. The actual configuration is carried out by this module, at network initialization time and also when the node restarts (i.e. after a shutdown or a crash.)
This module is needed because of failure/restart scenarios: Ipv6NetworkConfigurator would not be able to configure the node after a restart, because being a global module, it doesn’t know about node lifecycle events.
Usage diagram¶
Inheritance diagram¶
Used in compound modules¶
Name |
Type |
Description |
|---|---|---|
compound module |
Represents a complete IPv6 network layer (L3), to be used within hosts and routers. It connects to higher-layer protocols (TCP, UDP, …) on top and to the network interfaces below, and bundles the modules that together implement IPv6: |
Extends¶
Name |
Type |
Description |
|---|---|---|
simple module |
Base module for all INET simple modules. |
Parameters¶
Name |
Type |
Default value |
Description |
|---|---|---|---|
displayStringTextFormat |
string |
“” |
Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information |
interfaceTableModule |
string |
||
routingTableModule |
string |
||
networkConfiguratorModule |
string |
“” |
The absolute path to the Ipv6NetworkConfigurator; use “” if there is no configurator |
configureRoutingTable |
bool |
true |
Properties¶
Name |
Value |
Description |
|---|---|---|
class |
Ipv6NodeConfigurator |
|
display |
i=block/cogwheel |
Source code¶
//
// Configures the containing network node using information provided by
// the network's global configurator module ~Ipv6NetworkConfigurator.
//
// ~Ipv6NetworkConfigurator only computes and remembers configuration data
// (assigned IPv6 addresses, static routes, etc), but doesn't configure the
// nodes' routing tables and interfaces accordingly. The actual configuration
// is carried out by this module, at network initialization time and also when
// the node restarts (i.e. after a shutdown or a crash.)
//
// This module is needed because of failure/restart scenarios:
// ~Ipv6NetworkConfigurator would not be able to configure the node after
// a restart, because being a global module, it doesn't know about node
// lifecycle events.
//
simple Ipv6NodeConfigurator extends SimpleModule like IIpv6NodeConfigurator
{
parameters:
@class(Ipv6NodeConfigurator);
string interfaceTableModule;
string routingTableModule;
string networkConfiguratorModule = default(""); // The absolute path to the Ipv6NetworkConfigurator; use "" if there is no configurator
bool configureRoutingTable = default(true);
@display("i=block/cogwheel");
}
File: src/inet/networklayer/configurator/ipv6/Ipv6NodeConfigurator.ned