The system will utilize a MS SQL database and will be written in C# to run in a windows xp environment.
You will be given Remote Desktop & FTP access to a xp pro system to test the software. This machine will be on a nework with a variety of devices to test against.
When the system can be demonstrated using object code, payment will be released and you will deliver the source code.
There are two components to this system - a discovery program which builds a Microsoft SQL database of the devices found on the network.
The second component is a separate scan utility that is run periodically that uses the database created and maintained by the discovery utility and checks the current real time status of previously discovered devices.
You will create a xml file named [url removed, login to view] with two run time patrameters - beginning IP address and ending IP address. This is used to limit the range of the discovery scan to a network range as entered by the user in the XML file. You can assume that [url removed, login to view] will be in the same folder as the [url removed, login to view] .
Network discovery portion
This purpose of this routine will be to use a variety of techniques to scan a network range and detect as many devices as possible that respond to one or more of the various probes such as ping, snmp get, wmi, arp, FTP, TELNET, SMTP, HTTP, POP3 etc. The scan is limited to the range found in the [url removed, login to view] file.
The discovery routine will create (or update on subsequent executions) a MS sql table (NetDevices) of all devices that were discovered including their ip address, mac address, and other discovered data. (See database columns later in this document). The discovery routine must not destroy or alter columns that have been entered manually or by another program. The exception will be that if a particular MAC address is found at a new IP address, that new IP address will be inserted and replace an older IP address. Duplicate MAC addresses are not allowed because MAC address is the primary key to the NetDevices table.
It is not required to discover routers or routes.
columns in the NetDevices table:
MACaddress* Added / Maintained by discovery
IPaddress Added / Maintained by discovery
DNSName Added / Maintained by discovery
SysName Added / Maintained by discovery
NETBIOSName Added / Maintained by discovery
SNMPCommunity Added / Maintained by discovery
CommunityGet Added / Maintained by discovery
FTPResponse Added / Maintained by discovery
HTTPResponse Added / Maintained by discovery
POP3Response Added / Maintained by discovery
TelnetResponse Added / Maintained by discovery
SysUptime Added / Maintained by scan function
LastScanAttempt Added / Maintained by scan function (DateTime)
LastContact** Added / Maintained by scan function (DateTime)
ContactMethod*** Added / Maintained by scan function
* MAC Address is the primary key in the database
** may not be available for all devices
*** Ping, SNMP, FTP, etc.
The Network Scan
This routine is separate from the discovery routine. The purpose is to monitor the real time state of all the devices originally discovered by the network discovery routine or manually entered into the NetDevices table by a user.
Every device listed in the table will be probed. In all cases, the LastScanAttempt will be set to the datetime when the first attempt to contact the device is sent. The first method to attempt contact with the device will be PING.
8 freelancers are bidding on average $725 for this job
Hi, this is funny, most of the jobs here are junk and I was thinking about quiting freelancer when i saw this project. I beleive I am just the right man for You so here is my bid. Thanks Tom