marvis.node.ssh
Physical hosts to connect to via SSH.
Functions
Calculates the default IP address. |
Classes
An SSH node represents an external device reachable via SSH. |
- marvis.node.ssh.default_ip(ifname)[source]
Calculates the default IP address.
This takes the subnet and adds 1.
- Parameters
ifname (str) – The name of the interface.
- class marvis.node.ssh.SSHNode(name, ip=None, bridge=None, ifname='eth0', username='pi', password='raspberry')[source]
Bases:
marvis.node.external.ExternalNode
An SSH node represents an external device reachable via SSH.
- Parameters
username (str) – The username used to login onto the device.
password (str) – The password for the given user.
- command_executor
The executor for running commands on the external device. This is useful for a scripted
Workflow
.
- add_interface(interface, name=None, prefix='eth')
Add an interface to the node.
- Warning: Do not call this function manually.
The functionality is handled by the network and channels.
- Parameters
interface (
Interface
) – The interface to add.name (str) – The name of the interface.
prefix (str) – If no name is supplied, the function works out a name by appending a number to the prefix.
- execute_command(command, user=None)
Execute a command within the node.
- Parameters
command (str or list of str) – The command to execute.
user (str) – If a user (name) is specified, the command is executed as this user. Warning: Not all nodes support this feature.
- go_offline()
Disconnect the node from all channels.
- go_online()
Connect the node back to all channels.
- prepare(simulation)
This also runs setup on the remote device by setting the IP address the device is assigned during simulation.
- remove_remote_address(address)
Remove the simulation IP address from the remote device.
- Parameters
address (str) – The address to remove from the external node.
- set_position(x, y, z=0)
Set the position of the node and updates the mobitlity model.
- Parameters
x (float) – The x-position.
y (float) – The y-position.
z (float) – The z-position.
- setup_remote_address(address)
Add the simulation IP address to the remote device.
- Parameters
address (str) – The address to assign to the external node in simulation.
- wants_ip_stack()
Indicates whether a IP stack shall be installed onto the node.
Installing is handled by the Channel.
- Returns
True
indicates that a ns-3 IP stack shall be installed when preparing this node.- Return type
bool
- bridge
The name of the bridge the external node is connected to.
- ifname
The interface name on the remote device.
- channels
The cannels the node is connected to.
- name
The name of the node.
- ns3_node
The ns-3 internal node.
- position
The position of the node (used by wifi models and visualization)
- color
The color of the node used in the visualization.
- interfaces
The interfaces (~network cards) of this node.
Inheritance Diagramm