{"id":20743015,"url":"https://github.com/pandh4cker/kathara-panda","last_synced_at":"2025-08-26T23:36:48.590Z","repository":{"id":101886505,"uuid":"323164673","full_name":"PandH4cker/Kathara-Panda","owner":"PandH4cker","description":"Network Emulation of 4 sub networks, 3 routers, 1 DNS Server, 1 Java Web Server, 1 Static Web Server, 1 Client","archived":false,"fork":false,"pushed_at":"2021-01-05T14:15:57.000Z","size":5658,"stargazers_count":3,"open_issues_count":0,"forks_count":2,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-06-03T05:27:14.352Z","etag":null,"topics":["client","dns-server","emulation","java-web-server","kathara","network","networking","router","static-web-server","subnetwork"],"latest_commit_sha":null,"homepage":"","language":"HTML","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/PandH4cker.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-12-20T21:05:05.000Z","updated_at":"2023-11-18T14:06:35.000Z","dependencies_parsed_at":null,"dependency_job_id":"d95f6838-227f-4948-ab6e-c84a0e1a3dc0","html_url":"https://github.com/PandH4cker/Kathara-Panda","commit_stats":null,"previous_names":["pandh4cker/kathara-panda","mrrraph/kathara-panda"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/PandH4cker/Kathara-Panda","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PandH4cker%2FKathara-Panda","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PandH4cker%2FKathara-Panda/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PandH4cker%2FKathara-Panda/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PandH4cker%2FKathara-Panda/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/PandH4cker","download_url":"https://codeload.github.com/PandH4cker/Kathara-Panda/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PandH4cker%2FKathara-Panda/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":272267558,"owners_count":24903719,"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","status":"online","status_checked_at":"2025-08-26T02:00:07.904Z","response_time":60,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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":["client","dns-server","emulation","java-web-server","kathara","network","networking","router","static-web-server","subnetwork"],"created_at":"2024-11-17T07:08:46.812Z","updated_at":"2025-08-26T23:36:48.558Z","avatar_url":"https://github.com/PandH4cker.png","language":"HTML","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Kathara Panda\n\n## Authors\n\n[Raphaël Dray](https://www.linkedin.com/in/raphaeldray/) \u003cbr\u003e\n[Clara Nacache](https://www.linkedin.com/in/claranacache/) \u003cbr\u003e\n[Thierry Khamphousone](https://www.linkedin.com/in/tkhamphousone/) \u003cbr\u003e\n\n\u003cbr\u003e\n\n## Introduction \n\n[Kathara](https://www.kathara.org) is a network emulation system based on Docker where each device is emulated by an unique container which is interconnected by virtual L2 LANs, and each container can run a Docker image. Kathara is helpful to develop new network protocols within a testing network sandbox environment. It is a NetKit implementation.\n\n\u003cp align=\"center\" width=\"100%\"\u003e\n    \u003cimg align=\"center\" width=\"554\" height=\"136\" src=\"./pictures/logo.png\"/\u003e\n\u003c/p\u003e\n\n\n\u003cbr\u003e\n\n__Domain names__\n\n- **DNS name**: panda-crew.com \n- **SOA**: giga.panda-crew.com (192.168.100.100)\n- **Static Web Server name**: sws.panda-crew.com (10.20.30.100)\n- **Java Web Server name**: jws.panda-crew.com (172.16.0.100)\n- **Alias on Java Web Server**: www.panda-crew.com (172.16.0.100)\n\n\n\u003chr\u003e\u003cbr\u003e\n\n## How does it work?\n\n### Run Kathara's clusters\n\n__Requirements:__\n- [Kathara installation](https://github.com/KatharaFramework/Kathara/wiki)\n- [Docker installation](https://www.docker.com/get-started)\n\u003cbr\u003e\n\n__Important:__ \n\nKathara needs Docker to be running to start computers. So you must run Docker before Kathara lab.\n\n```bash\n#Start the project by looking at the lab.conf definitions\n\u003e kathara lstart\n\n#Stop all computers started from the lab.conf file\n\u003e kathara wipe\n```\n\n## Project description \n\n### Network Schema\n\n\u003cp align=\"center\" width=\"100%\"\u003e\n    \u003cimg align=\"center\" width=\"946\" height=\"789\" src=\"./pictures/network.png\"/\u003e\n\u003c/p\u003e\n\n\u003cbr\u003e\n\n### Network Configuration\n\n\u003cp align=\"center\" width=\"100%\"\u003e\n    \u003cimg align=\"center\" width=\"957\" height=\"394\" src=\"./pictures/lab_mapping_with_ip_configured.png\"/\u003e\n\u003c/p\u003e\n\n\u003cbr\u003e\n\n\n### Configuration explanations\n- [__router1__](https://github.com/MrrRaph/Kathara-Panda/blob/master/router1.startup): Communication between subnet A and subnet C\n- [__router2__](https://github.com/MrrRaph/Kathara-Panda/blob/master/router2.startup): Communication between subnet D and subnet B\n- [__router3__](https://github.com/MrrRaph/Kathara-Panda/blob/master/router3.startup): Communication between subnet C and subnet B\n- [__Client__](https://github.com/MrrRaph/Kathara-Panda/blob/master/client.startup): Get the HTML from the Java Web Server through Domain name\n- [__DNS Server__](https://github.com/MrrRaph/Kathara-Panda/blob/master/dns_server.startup): Define domain names and aliases\n- [__Java Web Server__](https://github.com/MrrRaph/Kathara-Panda/blob/master/java_web_server.startup): Uses as a Proxy for getting the HTML from the Static Web Server\n- [__Static Web Server__](https://github.com/MrrRaph/Kathara-Panda/blob/master/static_web_server.startup): Serves HTML pages\n\n\u003cbr\u003e\n\n#### Devices emulated by Docker containers\n\n\u003cp align=\"center\" width=\"100%\"\u003e\n    \u003cimg align=\"center\" width=\"998\" height=\"445\" src=\"./pictures/docker.png\"/\u003e\n\u003c/p\u003e\n\n\u003chr\u003e \u003cbr\u003e\n\n## Lab testing\n\n```bash\n\u003e traceroute www.panda-crew.com     \ntraceroute to www.panda-crew.com (172.16.0.100), 30 hops max, 60 byte packets\n 1  192.168.0.254 (192.168.0.254)  0.105 ms  0.027 ms  0.014 ms\n 2  10.20.30.254 (10.20.30.254)  0.036 ms  0.026 ms  0.026 ms\n 3  jws.panda-crew.com (172.16.0.100)  0.051 ms  0.040 ms  0.040 ms\n\n\u003e links http://www.panda-crew.com:1111\n```\n\u003cbr\u003e\n\u003cp align=\"center\" width=\"100%\"\u003e\n    \u003cimg align=\"center\" width=\"969\" height=\"957\" src=\"./pictures/panda.png\"/\u003e\n\u003c/p\u003e\n\n\u003cbr\u003e\n\n### DNS server configuration checking\n\n```bash\n#panda-crew.com\n\u003e dig panda-crew.com\n\n; \u003c\u003c\u003e\u003e DiG 9.10.3-P4-Debian \u003c\u003c\u003e\u003e panda-crew.com\n;; global options: +cmd\n;; Got answer:\n;; -\u003e\u003eHEADER\u003c\u003c- opcode: QUERY, status: NOERROR, id: 17539\n;; flags: qr aa rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 1, ADDITIONAL: 1\n\n;; OPT PSEUDOSECTION:\n; EDNS: version: 0, flags:; udp: 4096\n;; QUESTION SECTION:\n;panda-crew.com.\t\t\tIN\tA\n\n;; AUTHORITY SECTION:\npanda-crew.com.\t\t604800\tIN\tSOA\tgiga.panda-crew.com. admin.panda-crew.com. 3 604800 86400 2419200 604800\n\n;; Query time: 0 msec\n;; SERVER: 192.168.100.100#53(192.168.100.100)\n;; WHEN: Mon Jan 04 21:09:16 UTC 2021\n;; MSG SIZE  rcvd: 90\n\n\n#java web server\n\u003e dig jws.panda-crew.com\n\n; \u003c\u003c\u003e\u003e DiG 9.10.3-P4-Debian \u003c\u003c\u003e\u003e jws.panda-crew.com\n;; global options: +cmd\n;; Got answer:\n;; -\u003e\u003eHEADER\u003c\u003c- opcode: QUERY, status: NOERROR, id: 55204\n;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 2\n\n;; OPT PSEUDOSECTION:\n; EDNS: version: 0, flags:; udp: 4096\n;; QUESTION SECTION:\n;jws.panda-crew.com.\t\tIN\tA\n\n;; ANSWER SECTION:\njws.panda-crew.com.\t604800\tIN\tA\t172.16.0.100\n\n;; AUTHORITY SECTION:\npanda-crew.com.\t\t604800\tIN\tNS\tgiga.panda-crew.com.\n\n;; ADDITIONAL SECTION:\ngiga.panda-crew.com.\t604800\tIN\tA\t192.168.100.100\n\n;; Query time: 0 msec\n;; SERVER: 192.168.100.100#53(192.168.100.100)\n;; WHEN: Mon Jan 04 21:09:39 UTC 2021\n;; MSG SIZE  rcvd: 98\n\n\n#static web server\n\u003e dig sws.panda-crew.com\n\n; \u003c\u003c\u003e\u003e DiG 9.10.3-P4-Debian \u003c\u003c\u003e\u003e sws.panda-crew.com\n;; global options: +cmd\n;; Got answer:\n;; -\u003e\u003eHEADER\u003c\u003c- opcode: QUERY, status: NOERROR, id: 7321\n;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 2\n\n;; OPT PSEUDOSECTION:\n; EDNS: version: 0, flags:; udp: 4096\n;; QUESTION SECTION:\n;sws.panda-crew.com.\t\tIN\tA\n\n;; ANSWER SECTION:\nsws.panda-crew.com.\t604800\tIN\tA\t10.20.30.100\n\n;; AUTHORITY SECTION:\npanda-crew.com.\t\t604800\tIN\tNS\tgiga.panda-crew.com.\n\n;; ADDITIONAL SECTION:\ngiga.panda-crew.com.\t604800\tIN\tA\t192.168.100.100\n\n;; Query time: 0 msec\n;; SERVER: 192.168.100.100#53(192.168.100.100)\n;; WHEN: Mon Jan 04 21:09:59 UTC 2021\n;; MSG SIZE  rcvd: 98\n```\n\n\u003cbr\u003e\n\n### Apache file retrieving\n\n```bash\n\u003e wget sws.panda-crew.com\n\n--2021-01-04 21:12:12--  http://sws.panda-crew.com/\nResolving sws.panda-crew.com (sws.panda-crew.com)... 10.20.30.100\nConnecting to sws.panda-crew.com (sws.panda-crew.com)|10.20.30.100|:80... connected.\nHTTP request sent, awaiting response... 200 OK\nLength: 3482 (3.4K) [text/html]\nSaving to: 'index.html'\n\nindex.html             100%[==========================\u003e]   3.40K  --.-KB/s    in 0s      \n\n2021-01-04 21:12:12 (396 MB/s) - 'index.html' saved [3482/3482]\n\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpandh4cker%2Fkathara-panda","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpandh4cker%2Fkathara-panda","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpandh4cker%2Fkathara-panda/lists"}