6.2Cv2
SIT223 – Professional Practice in Information Technology
SIT202 – Secure Networking
Task 6.2C
This is a Credit task
As you are targeting above the pass grade, you will be expected to gain deeper understanding
of the topics we cover in this unit, going above and beyond in your learning journey. For this
credit task, you will be developing a DNS server using Python.
Task Requirement
Present evidence that you have been able to develop the DNS server according to the
instructions provided. You need to submit your summary and reflections on your learning &
evidence to OnTrack.
Task Instruction
For this task, you will build a DNS server using Python. Your DNS server must have the
following features and functionality.
• As we have learnt in Module 2, DNS uses UDP as the transport layer protocol.
• Uses the query and response messages.
• Capable of supporting two types of resource records, A and CNAME.
• Capable of supporting Hostname-to-IP-address translation and host aliasing.
• The server must display a message on the terminal when it is started to indicate it is
running.
You must also build a client program to test the DNS server. The client program must be able
to provide the hostname /alias name in the terminal and send a DNS query to the server. The
client process must display the response received from the server in the terminal. Client
program should also prompt the user to check whether the user would like to continue with
another DNS query or not.
Task Submission Instruction
You need to submit the following files to OnTrack:
1. A pdf demonstrating the evidence that you have successfully developed a DNS server,
and summary and reflection on your learning.
2. Python code: Server program
3. Python code: Client program