ECE4016 Local DNS Server


ECE4016 Assignment 1
In this assignment, you are required to implement a simple Local DNS Server .
Introduction
The Domain Name System (DNS) is the hierarchical and decentralized naming system used to
identify computers reachable through the Internet or other Internet Protocol (IP) networks. The
resource records contained in the DNS associate domain names with other forms of information.
These are most commonly used to map human-friendly domain names to the numerical IP
addresses computers need to locate services and devices using the underlying network
protocols, but have been extended over time to perform many other functions as well. The
Domain Name System has been an essential component of the functionality of the Internet since
1985. (wikipedia)
Iterative query and Recursive query
Detailed grading rule
The local DNS server should have the following function:Listen and accept the DNS queries
Send response to the clients
Maintain a cache(20 points). If the ip address is queried before, it should be stored in the
cache. if the answer for the query is found in cache, Local DNS Server send this answer to
Client as the DNS response
Support the DNS queries of www.baidu.com through recursive or iterative searching (30
points)
Support the DNS queries of www.example.com through recursive or iterative searching (20
points)
Support the DNS queries of www.baidu.com through public DNS server (15 points)
Support the DNS queries of www.example.com through public DNS server (15 points)
Requirements
Print the ip address of all the servers you pass by during the searching
Use a variable flag to indicate whether ask the public server for the IP address. When the
flag is set to be 0 , ask the public server for the IP address. When the flag is set to be 1 do
the recursive or iterative searching
Make sure your program works under ubuntu 20
Show how to execute your code
The programming language should be Python(version 3.9)
Dnspython is not allowed to use in this lab
The server is required to work on port 1234 of 127.0.0.1
Useful tools
There are some useful tools that may help you in your programming. (Dnspython is not allowed
to use in this lab)
socket
dnslibSimple test by yourself
You can use dig to test your local NDS server.
An example test code:
dig www.example.com @127.0.0.1 -p 1234
dig www.baidu.com @127.0.0.1 -p 1234
Note that this test code will be used in the evaluation of this project, make sure your program
works given this test code.
Submission
Due on 23:59, 13 Oct 2024(Late submission within 5 minitues is allowed without
punishment)
Every 24h late delivery will be deducted 10%, and 48h late delivery will be allowed at most.
After 48h, 0 marks will be given for this assignment
Honesty
We take your honesty seriously. If you are caught copying others' code, you will get an
automatic 0 in this project. Please write your own code.
 

NDS 62310是指一种国家标准,也被称为NDS标准。这个标准主要用于建筑设备和暖通空调系统的设计和安装。NDS标准规定了建筑设备和暖通空调系统的技术要求,以确保其安全高效地运行。 NDS 62310标准包括了多个方面的内容。首先,它涵盖了建筑设备和暖通空调系统的基本原理和工作原理的描述。这有助于工程师和技术人员理解系统的运行方式,从而更好地设计和安装。 其次,NDS 62310标准规定了建筑设备和暖通空调系统的技术参数和性能要求。这些参数包括系统的制冷和供暖能力、风量、噪音水平、能源消耗等。确保系统达到这些要求可以提供舒适的室内环境,并提高能源利用效率。 此外,NDS 62310还对建筑设备和暖通空调系统的安装和调试提出了要求。它规定了设备的安装位置、管道布局、电气连接等方面的要求,旨在确保系统的安全运行和使用。 NDS 62310标准还包括关于维护保养和使用管理的指导。它提供了设备的维护保养周期和方法,并制定了系统的运行管理程序。这有助于延长设备的使用寿命,并保证系统的稳定性和可靠性。 总的来说,NDS 62310标准是建筑设备和暖通空调系统设计和安装的重要依据。它涵盖了系统的基本原理、技术参数、安装要求、维护保养和使用管理等多个方面,确保系统能够安全高效地运行,为用户提供舒适的室内环境。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值