Each module that represent a node in the network (e.g. a host, router) should be marked with the @node property (in recent versions of INET it is called @networkNode instead of @node). Here is how it is done in INET's NodeBase.ned:
module NodeBase like INetworkNode
{
parameters:
@networkNode
@display("bgb=,448");
...
The @networkNode is actually a marker so any module placed inside the node can travel up in the module parent chain and find which module represents the actual host it is residing in. This helps the modules inside the host to more easily navigate. For example, if a module is interested in the physical position of the host, it starts traveling upwards on the module chain and check each time whether this module has the @networkNode property. If it does, then by convention, it should have a submodule named "mobility" which can be used to retrieve the location.
*.nedfile (CompleteScenarioIncludingGateway) - user4786271