This bid request is for a VB.net DNS Server - windows service & basic front-end.
It must fully conform to RFC's 1034 1035 (and any amendments).
The DNS server MUST support all Resource Record types from the RFC's (A, MX, CNAME etc). These should be well defined in code as classes.
The deliverable must run as a Windows service with a form front-end.
So, put simply:
* ComputerA is told to use my DNS Application as it's DNS Server.
* ComputerA asks my DNS Server for the IP address ("A" record) of www.yahoo.com.
* DNS Server application looks in its cache to see if it already has the answer.
* * If so it responds with the cached answer (assuming the TTL has not expired).
* If not it either
* Refers ComputerA to another DNS Server (iterative)
* Or finds the answer itself (recursive).
All of the above is standard DNS server functionality, as found in the RFC's mentioned above.
The finished application should be able to support 250 concurrent requests. (multi-threaded).
The code must be structured granualarly (modules and classes) and must be well commented (in English) and easy for me to see how each part connects with the next.
The CACHE should be maintained in a DataTable object. I should be able to manipulate this datatable object at run-time.
Full DNS RFC compliance is essential.
If you do not have 3 or more previous projects on RentaCoder then please do not bid.
Thanks for bidding and good luck :)
## Deliverables
A
**10% Bonus** will be given **if** the project is met on-time and exactly to specification. You will also be given first refusal on further work relating to this project or other future bid requests I make.
* * *
The DNS Server itself will run as a Windows service. The front end GUI simply displays the Cache as it is held in the memory of the service, so that I can see what data it holds. I want to be able to modify an entry in the cache via the GUI.
For example, let's say that the Service has resolved [login to view URL] for a user as 1.2.3.4 ('A' record).
The Service will have 1.2.3.4 in its cache for as long as the TTL of the DNS record allows. However, I want to be able to change what is in the cache to 4.3.2.1 if I want. I would expect to see a table in the gui with 4 columns: **
**
| **Host Query** | **Query Type** | **Cached Reponse** | **Expiry Date** |
| [login to view URL] | A | 1.2.3.4 | 2009-06-09 13:52:13 |
| [login to view URL] | MX | [login to view URL] | 2009-06-09 17:52:13 |
etc,etc.
I should be able to modify the "cached response" and expiry times. I should be able to add and delete an entry from the cache.
* * *This broadcast message was sent to all bidders on Tuesday Jun 9, 2009 10:27:33 AM:
Please read the below - one of the bidders asked for more information and this is my response. Hopefully it will make things a little clearer. This has been updated in the project description also: The DNS Server itself will run as a Windows service. The front end GUI simply displays the Cache as it is held in the memory of the service, so that I can see what data it holds. I want to be able to modify an entry in the cache via the GUI. For example, let's say that the Service has resolved [login to view URL] for a user as 1.2.3.4 ('A' record). The Service will have 1.2.3.4 in its cache for as long as the TTL of the DNS record allows. However, I want to be able to change what is in the cache to 4.3.2.1 if I want. I would expect to see a table in the gui with 4 columns: Host Query Query Type Cached Reponse Expiry Date [login to view URL] A 1.2.3.4 2009-06-09 13:52:13 [login to view URL] MX [login to view URL] 2009-06-09 17:52:13 etc,etc. I should be able to modify the "cached response" and expiry times. I should be able to add and delete an entry from the cache.