{"id":25343388,"url":"https://github.com/savelevmatthew/cachingdns","last_synced_at":"2025-04-08T14:26:52.590Z","repository":{"id":111034951,"uuid":"267547247","full_name":"SavelevMatthew/CachingDNS","owner":"SavelevMatthew","description":"Simple local DNS cache server written in Python","archived":false,"fork":false,"pushed_at":"2020-10-15T09:45:15.000Z","size":44,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-02-14T10:44:14.659Z","etag":null,"topics":["cache","dns-server","pet-project","university-project"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/SavelevMatthew.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2020-05-28T09:24:22.000Z","updated_at":"2024-12-22T10:20:06.000Z","dependencies_parsed_at":"2024-03-15T17:53:49.093Z","dependency_job_id":null,"html_url":"https://github.com/SavelevMatthew/CachingDNS","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SavelevMatthew%2FCachingDNS","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SavelevMatthew%2FCachingDNS/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SavelevMatthew%2FCachingDNS/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SavelevMatthew%2FCachingDNS/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/SavelevMatthew","download_url":"https://codeload.github.com/SavelevMatthew/CachingDNS/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247859196,"owners_count":21008051,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cache","dns-server","pet-project","university-project"],"created_at":"2025-02-14T10:38:30.048Z","updated_at":"2025-04-08T14:26:52.578Z","avatar_url":"https://github.com/SavelevMatthew.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"![# CachingDNS](./Images/CachingDNSLogo.png)\n\u003e This utility realise Redirecting DNS Server with Cache function, so when DNS request incomes, it will look for answers in cache first and then if nothing was found will ask for help parent DNS server\n\n## Table of Contents\n[Installation](#installation)\\\n[Configuration](#configuration)\\\n[Launching](#launching)\\\n[Usage Examples](#usage-examples)\\\n[Current State](#current-status)\\\n[Author](#author)\n\n## Installation\nDownload project to your machine.\nThen use the package manager [pip](https://pip.pypa.io/en/stable/) to install the following packages.\n\n```bash\npip install -r requirements.txt\n```\n\n## Configuration\n\nOpen **config.ini** file to set up, then change following setting if you want:\n\n**ip** - IP of your server, leave it 127.0.0.1 if you want to use localhost\n\n**port** - don't recommend to change it, since DNS requests are usually use 53th port to communicate\n\n**max_packet_size** - maximal size of a packet, which can be received (RFC says max is 512 bytes, so we dont recommend setting up less amount)\n\n**parent_dns** - IP of parent DNS (8.8.8.8 by default, which is Google Developer's DNS)\n\n**cache_filename** - Name of the file, where all cache information will be stored\n\n## Launching\n\n#### Mac OS / Linux\n\n```bash\nsudo python main.py\n```\nMake sure you run it in sudo, since running server on a port, which are less than 80, requires your permissions\n\n#### Windows\n**Run cmd as ADMINISTRATOR**\n```bash\npython main.py\n```\n\n## Usage Examples\n\nUse whatever utility you want to send DNS requests...Here is few \"in-box\" examples\n\n#### Mac OS / Linux\n\n```bash\ndig example.com @127.0.0.1\n```\n\n#### Windows\n```bash\nnslookup example.com 127.0.0.1\n```\n\n## Current Status\nProject development is finished. It works stable ang great ;)\n\n## Author\n### Savelev Matvey\n\u003e #### Github: [@SavelevMatthew](https://github.com/SavelevMatthew)\n\u003e ##### Email: savelevmatthew@gmail.com\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsavelevmatthew%2Fcachingdns","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsavelevmatthew%2Fcachingdns","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsavelevmatthew%2Fcachingdns/lists"}