Package: net-survey
Net-Survey==========Net-Survey allows you to deploy agents throughout your infrastructure togather network, interface, and ip configuration with the end goal of runninga direct scan of basic reachability and ports.  Server and agents deployedwill progress through a series of steps once started:* Gathering of interface and network information.* Updating the central server.* Processing of topology information.* Distribution of all topology data to clients.* Clients then proceed to scanning of known neighboring hosts.* Retrieval of test results.The benefit of Net-Survey is providing tests in situations where networksare isolated, i.e. a backend storage network.  It is also very fast asthe targeted scan will only scan known neighboring IPs with the interestof learning where setup issues exist on a new or existing infrastructure.Installation============Simple install via pypi:Note: Please ensure python-dev is installed prior to installing net-survey.```pip install net-survey```Command Line Usage==================Server start:```net-survey --mode server --inventory_file /home/user/myinventory```API start:```net-survey --mode api --inventory_file /home/user/myinventory```Client start:```net-survey --server_ip <server_ip>```Usage=====Ensure config file is installed during setup.  You might need sudo privilegesto install net-survey as it creates /etc/net-survey.  The configuration filecan be manually stated via the --config-file param as well.Server start:```net-survey --config-file /etc/net-survey/netsurvey.config```Use the configuration file provided to set the mode to `server`. Optionally,adjust the API, Redis, and Server ports to best fit your needs.API start:```net-survey --config-file /etc/net-survey/netsurvey.config```Use the configuration file provided to set the mode to `api`. Optionally,adjust the API and Redis ports to best fit your needs.Client start:```net-survey --config-file /etc/net-survey/netsurvey.config```Use the configuration file provided to set the mode to `client`. Set the IPAddress of the server via `server_ip`, and optionally, adjust the optionsto best suite your needs.API Usage=========The API server can be started on one node with the main Net-Survey server withthe mode `mixed`.  Otherwise, the API node can be separated from the servernode by setting the mode to `api`.Redis is required to be installed and reachable, where the API node is incontrol of the server and clients.  The Redis instance can be located on anyof the server or api nodes.The API Server will respond to GET requests on / and return a JSON dumpcontaining the results of a scan or the current status of a scan:```json{"_host_detail":{"compute02":{"192.168.140.0/24":{"ips": ["192.168.140.118"],"results": {"192.168.140.117":{"host": "compute01","result": "success","open_ports": [22]}}}, "192.168.100.0/24":{"ips": ["192.168.100.118"],"results": {"192.168.100.117":{"host": "compute01","result": "success","open_ports": [22]}}}},"compute01":{"192.168.140.0/24":{"ips": ["192.168.140.117"],"results": {"192.168.140.118":{"host": "compute02","result": "success","open_ports": [22]}}}, "192.168.100.0/24":{"ips": ["192.168.100.117"],"results":{"192.168.100.118":{"host": "compute02","result": "success","open_ports": [22]}}}}},"_state": "sleeping","_clients": {"compute02": "192.168.100.118", "compute01": "192.168.100.117"},"_networks":{"192.168.140.0/24": ["compute02", "compute01"],"192.168.100.0/24": ["compute02", "compute01"]}}```The API Server can also control when a scan will take place, by issuing aPOST to /start.  By default, the server service will not immediately start ascan, but this can be enabled by setting `scan_on_start` to `True`.By setting `scan_on_start` the server instance will bypass all API control,and disables the need for the API and Redis instances.