├── .nvmrc
├── .github
├── CODEOWNERS
├── FUNDING.yml
├── codeql-config.yml
├── ISSUE_TEMPLATE
│ ├── config.yml
│ ├── question_feedback.yml
│ ├── deployment_issue.yml
│ └── bug_report.yml
├── CONTRIBUTING.md
└── workflows
│ ├── tag.yml
│ └── deploy.yml
├── tests
├── e2e
│ └── general
│ │ └── error-checks.spec.ts
├── vitest.api.config.ts
├── api
│ ├── run-api-tests.ts
│ └── api-overview.test.ts
├── unit
│ ├── routes
│ │ ├── health
│ │ │ └── +server.test.ts
│ │ ├── version
│ │ │ └── +server.test.ts
│ │ └── api
│ │ │ └── internal
│ │ │ └── diagnostics
│ │ │ ├── dns
│ │ │ └── server-simple.test.ts
│ │ │ ├── tls-handshake
│ │ │ └── server.test.ts
│ │ │ ├── asn-geo
│ │ │ └── server.test.ts
│ │ │ ├── ipv6-connectivity
│ │ │ └── server.test.ts
│ │ │ └── bgp
│ │ │ └── server.test.ts
│ ├── constants
│ │ └── icon-map.test.ts
│ ├── lib
│ │ └── stores
│ │ │ ├── contextMenu.test.ts
│ │ │ └── version.test.ts
│ └── content
│ │ ├── dnsbl.test.ts
│ │ └── dns-performance.test.ts
└── helpers
│ └── README.md
├── src
├── routes
│ ├── cidr
│ │ ├── mask-converter
│ │ │ ├── +page.svelte
│ │ │ └── subnet-mask-to-cidr
│ │ │ │ └── +page.svelte
│ │ ├── compare
│ │ │ └── +page.svelte
│ │ ├── allocator
│ │ │ └── +page.svelte
│ │ ├── gaps
│ │ │ └── +page.svelte
│ │ ├── deaggregate
│ │ │ └── +page.svelte
│ │ ├── alignment
│ │ │ └── +page.svelte
│ │ ├── wildcard-mask
│ │ │ └── +page.svelte
│ │ ├── next-available
│ │ │ └── +page.svelte
│ │ └── set-operations
│ │ │ ├── overlap
│ │ │ └── +page.svelte
│ │ │ ├── diff
│ │ │ └── +page.svelte
│ │ │ ├── contains
│ │ │ └── +page.svelte
│ │ │ └── +page.svelte
│ ├── dns
│ │ ├── zone
│ │ │ ├── diff
│ │ │ │ └── +page.svelte
│ │ │ ├── stats
│ │ │ │ └── +page.svelte
│ │ │ ├── linter
│ │ │ │ └── +page.svelte
│ │ │ └── name-length-checker
│ │ │ │ └── +page.svelte
│ │ ├── generators
│ │ │ ├── caa-builder
│ │ │ │ └── +page.svelte
│ │ │ ├── loc-builder
│ │ │ │ └── +page.svelte
│ │ │ ├── rp-builder
│ │ │ │ └── +page.svelte
│ │ │ ├── dmarc-builder
│ │ │ │ └── +page.svelte
│ │ │ ├── naptr-builder
│ │ │ │ └── +page.svelte
│ │ │ ├── tlsa-generator
│ │ │ │ └── +page.svelte
│ │ │ ├── dkim-keygen
│ │ │ │ └── +page.svelte
│ │ │ ├── ptr-generator
│ │ │ │ └── +page.svelte
│ │ │ ├── sshfp-generator
│ │ │ │ └── +page.svelte
│ │ │ ├── svcb-https-builder
│ │ │ │ └── +page.svelte
│ │ │ ├── idn-punycode
│ │ │ │ └── +page.svelte
│ │ │ ├── a-aaaa-bulk
│ │ │ │ └── +page.svelte
│ │ │ ├── mx-planner
│ │ │ │ └── +page.svelte
│ │ │ ├── txt-escape
│ │ │ │ └── +page.svelte
│ │ │ ├── spf-builder
│ │ │ │ └── +page.svelte
│ │ │ ├── srv-builder
│ │ │ │ └── +page.svelte
│ │ │ ├── cname-builder
│ │ │ │ └── +page.svelte
│ │ │ └── +page.svelte
│ │ ├── dnssec
│ │ │ ├── nsec3-hash
│ │ │ │ └── +page.svelte
│ │ │ ├── ds-generator
│ │ │ │ └── +page.svelte
│ │ │ ├── dnskey-tag
│ │ │ │ └── +page.svelte
│ │ │ ├── rrsig-planner
│ │ │ │ └── +page.svelte
│ │ │ └── cds-cdnskey-builder
│ │ │ │ └── +page.svelte
│ │ ├── ttl-calculator
│ │ │ └── +page.svelte
│ │ ├── edns-size-estimator
│ │ │ └── +page.svelte
│ │ ├── label-normalizer
│ │ │ └── +page.svelte
│ │ ├── record-validator
│ │ │ └── +page.svelte
│ │ ├── reverse
│ │ │ ├── ptr-sweep-planner
│ │ │ │ └── +page.svelte
│ │ │ ├── ptr-generator
│ │ │ │ └── +page.svelte
│ │ │ ├── zone-generator
│ │ │ │ └── +page.svelte
│ │ │ └── reverse-zones
│ │ │ │ └── +page.svelte
│ │ └── +page.svelte
│ ├── api
│ │ ├── cidr
│ │ │ └── [tool]
│ │ │ │ └── +server.ts
│ │ ├── dns
│ │ │ └── [tool]
│ │ │ │ └── +server.ts
│ │ ├── subnetting
│ │ │ └── [tool]
│ │ │ │ └── +server.ts
│ │ ├── ip-address-convertor
│ │ │ └── [tool]
│ │ │ │ └── +server.ts
│ │ ├── +server.ts
│ │ └── internal
│ │ │ └── mac-lookup
│ │ │ └── +server.ts
│ ├── sitemap
│ │ └── +page.svelte
│ ├── search
│ │ └── +page.svelte
│ ├── bookmarks
│ │ └── +page.svelte
│ ├── ip-address-convertor
│ │ ├── ipv6
│ │ │ ├── nat64
│ │ │ │ └── +page.svelte
│ │ │ ├── teredo
│ │ │ │ └── +page.svelte
│ │ │ └── solicited-node
│ │ │ │ └── +page.svelte
│ │ ├── enumerate
│ │ │ └── +page.svelte
│ │ ├── validator
│ │ │ └── +page.svelte
│ │ ├── notation
│ │ │ ├── zone-id
│ │ │ │ └── +page.svelte
│ │ │ ├── normalize
│ │ │ │ └── +page.svelte
│ │ │ ├── ipv6-expand
│ │ │ │ └── +page.svelte
│ │ │ └── ipv6-compress
│ │ │ │ └── +page.svelte
│ │ ├── ula-generator
│ │ │ └── +page.svelte
│ │ ├── eui64
│ │ │ └── +page.svelte
│ │ ├── nth-ip
│ │ │ └── +page.svelte
│ │ ├── random
│ │ │ └── +page.svelte
│ │ ├── distance
│ │ │ └── +page.svelte
│ │ ├── representations
│ │ │ └── +page.svelte
│ │ ├── families
│ │ │ ├── ipv6-to-ipv4
│ │ │ │ └── +page.svelte
│ │ │ └── ipv4-to-ipv6
│ │ │ │ └── +page.svelte
│ │ └── +page.svelte
│ ├── subnetting
│ │ ├── planner
│ │ │ └── +page.svelte
│ │ ├── vlsm-calculator
│ │ │ └── +page.svelte
│ │ └── ipv4-subnet-calculator
│ │ │ └── +page.svelte
│ ├── about
│ │ ├── (sections)
│ │ │ ├── api
│ │ │ │ └── +page.svelte
│ │ │ ├── support
│ │ │ │ └── +page.svelte
│ │ │ ├── building
│ │ │ │ └── +page.svelte
│ │ │ ├── deploying
│ │ │ │ └── +page.svelte
│ │ │ ├── author
│ │ │ │ └── +page.svelte
│ │ │ ├── attributions
│ │ │ │ └── +page.svelte
│ │ │ └── self-hosting
│ │ │ │ └── +page.svelte
│ │ ├── legal
│ │ │ ├── license
│ │ │ │ └── +page.svelte
│ │ │ ├── cookies
│ │ │ │ └── +page.svelte
│ │ │ ├── community
│ │ │ │ └── +page.svelte
│ │ │ ├── security
│ │ │ │ └── +page.svelte
│ │ │ └── +layout.svelte
│ │ └── +layout.svelte
│ ├── dhcp
│ │ ├── v6
│ │ │ ├── identity
│ │ │ │ ├── duid-generator
│ │ │ │ │ └── +page.svelte
│ │ │ │ └── iaid-calculator
│ │ │ │ │ └── +page.svelte
│ │ │ └── options
│ │ │ │ ├── option23-24-dns
│ │ │ │ └── +page.svelte
│ │ │ │ ├── option39-fqdn
│ │ │ │ └── +page.svelte
│ │ │ │ └── option25-prefix-delegation
│ │ │ │ └── +page.svelte
│ │ ├── v4
│ │ │ └── options
│ │ │ │ ├── option3-default-gateway
│ │ │ │ └── +page.svelte
│ │ │ │ ├── option61-clientid
│ │ │ │ └── +page.svelte
│ │ │ │ ├── options6-15-dns
│ │ │ │ └── +page.svelte
│ │ │ │ ├── freeform-tlv
│ │ │ │ └── +page.svelte
│ │ │ │ ├── option51-lease-time
│ │ │ │ └── +page.svelte
│ │ │ │ ├── pxe-boot-profile
│ │ │ │ └── +page.svelte
│ │ │ │ ├── option82-relay-agent
│ │ │ │ └── +page.svelte
│ │ │ │ ├── option119-domain-search
│ │ │ │ └── +page.svelte
│ │ │ │ ├── option150-tftp-server
│ │ │ │ └── +page.svelte
│ │ │ │ ├── option121-classless-routes
│ │ │ │ └── +page.svelte
│ │ │ │ ├── option43-vendor-specific
│ │ │ │ └── +page.svelte
│ │ │ │ └── option60-vendor-class
│ │ │ │ └── +page.svelte
│ │ ├── calculators
│ │ │ └── lease-time
│ │ │ │ └── +page.svelte
│ │ ├── kea-isc-snippets
│ │ │ └── +page.svelte
│ │ ├── tools
│ │ │ └── fingerprinting
│ │ │ │ └── +page.svelte
│ │ └── +page.svelte
│ ├── health
│ │ └── +server.ts
│ ├── version
│ │ └── +server.ts
│ ├── offline
│ │ └── +page.server.ts
│ ├── +page.ts
│ ├── reference
│ │ └── +page.svelte
│ ├── diagnostics
│ │ ├── +page.svelte
│ │ └── dns
│ │ │ └── +page.svelte
│ ├── +layout.server.ts
│ └── +page.svelte
├── lib
│ ├── index.ts
│ ├── components
│ │ ├── page-specific
│ │ │ └── about
│ │ │ │ ├── ApiSection.svelte
│ │ │ │ ├── TipsSection.svelte
│ │ │ │ ├── SupportSection.svelte
│ │ │ │ ├── SelfHostingSection.svelte
│ │ │ │ └── BuildingSection.svelte
│ │ ├── common
│ │ │ ├── ErrorCard.svelte
│ │ │ ├── WarningCard.svelte
│ │ │ ├── StatusOverview.svelte
│ │ │ ├── ActionButton.svelte
│ │ │ ├── ResultsCard.svelte
│ │ │ ├── ExamplesCard.svelte
│ │ │ └── KeyboardShortcutChip.svelte
│ │ ├── home
│ │ │ ├── HomepageMinimal.svelte
│ │ │ ├── HomepageEmpty.svelte
│ │ │ └── HomepageSearch.svelte
│ │ ├── global
│ │ │ ├── ToolsGrid.svelte
│ │ │ └── SvgIcon.svelte
│ │ ├── furniture
│ │ │ └── Footer.svelte
│ │ └── tools
│ │ │ └── ReservedRangesReference.svelte
│ ├── utils
│ │ ├── deployment.ts
│ │ ├── nav.ts
│ │ ├── debounce.ts
│ │ ├── json-serialization.ts
│ │ ├── keyboard.ts
│ │ ├── api-handler.ts
│ │ ├── formatters.ts
│ │ └── tool-context-menu.ts
│ ├── contexts
│ │ └── cidr.ts
│ ├── composables
│ │ ├── index.ts
│ │ ├── useExamples.svelte.ts
│ │ ├── useToolSearch.svelte.ts
│ │ ├── useDiagnosticState.svelte.ts
│ │ ├── useValidation.svelte.ts
│ │ └── useClipboard.svelte.ts
│ ├── stores
│ │ ├── contextMenu.ts
│ │ ├── version.ts
│ │ ├── primaryColor.ts
│ │ ├── siteCustomization.ts
│ │ ├── customCss.ts
│ │ └── fontScale.ts
│ ├── config
│ │ └── font-config.ts
│ ├── types
│ │ └── ip.ts
│ ├── assets
│ │ └── favicon.svg
│ └── constants
│ │ ├── site.ts
│ │ └── networks.ts
├── app.d.ts
├── hooks.server.ts
├── node-types.d.ts
└── hooks.client.ts
├── static
├── icon.png
├── banner.png
├── favicon.ico
├── favicon.png
├── favicon-32x32.png
├── robots.txt
├── .well-known
│ ├── security.txt
│ ├── gpc.json
│ └── humans.txt
├── fonts
│ ├── inter-v20-latin-500.woff2
│ ├── inter-v20-latin-600.woff2
│ ├── inter-v20-latin-700.woff2
│ ├── fira-code-v27-latin-500.woff2
│ ├── fira-code-v27-latin-600.woff2
│ ├── fira-code-v27-latin-700.woff2
│ ├── fira-sans-v18-latin-500.woff2
│ ├── fira-sans-v18-latin-600.woff2
│ ├── inter-v20-latin-regular.woff2
│ ├── fira-code-v27-latin-regular.woff2
│ └── fira-sans-v18-latin-regular.woff2
└── custom-styles.css
├── .prettierrc
├── .npmrc
├── docker-compose.yml
├── .gitignore
├── vite.config.ts
├── tsconfig.json
├── LICENSE
├── playwright.config.ts
├── vitest.config.ts
├── Dockerfile
├── codecov.yaml
├── .codacy.yml
├── eslint.config.js
└── package.json
/.nvmrc:
--------------------------------------------------------------------------------
1 | 22.20.0
2 |
--------------------------------------------------------------------------------
/.github/CODEOWNERS:
--------------------------------------------------------------------------------
1 | * @Lissy93
2 |
--------------------------------------------------------------------------------
/tests/e2e/general/error-checks.spec.ts:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/.github/FUNDING.yml:
--------------------------------------------------------------------------------
1 | github: [lissy93]
2 |
--------------------------------------------------------------------------------
/src/routes/cidr/mask-converter/+page.svelte:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/static/icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lissy93/networking-toolbox/HEAD/static/icon.png
--------------------------------------------------------------------------------
/src/lib/index.ts:
--------------------------------------------------------------------------------
1 | // place files you want to import through the `$lib` alias in this folder.
2 |
--------------------------------------------------------------------------------
/static/banner.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lissy93/networking-toolbox/HEAD/static/banner.png
--------------------------------------------------------------------------------
/static/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lissy93/networking-toolbox/HEAD/static/favicon.ico
--------------------------------------------------------------------------------
/static/favicon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lissy93/networking-toolbox/HEAD/static/favicon.png
--------------------------------------------------------------------------------
/static/favicon-32x32.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lissy93/networking-toolbox/HEAD/static/favicon-32x32.png
--------------------------------------------------------------------------------
/static/robots.txt:
--------------------------------------------------------------------------------
1 | User-agent: *
2 | Disallow:
3 |
4 | Sitemap: https://networkingtoolbox.net/sitemap.xml
5 |
--------------------------------------------------------------------------------
/static/.well-known/security.txt:
--------------------------------------------------------------------------------
1 | Contact: mailto:security@as93.net
2 | Expires: 2029-12-31T23:59:00.000Z
3 | Preferred-Languages: en
4 |
--------------------------------------------------------------------------------
/static/fonts/inter-v20-latin-500.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lissy93/networking-toolbox/HEAD/static/fonts/inter-v20-latin-500.woff2
--------------------------------------------------------------------------------
/static/fonts/inter-v20-latin-600.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lissy93/networking-toolbox/HEAD/static/fonts/inter-v20-latin-600.woff2
--------------------------------------------------------------------------------
/static/fonts/inter-v20-latin-700.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lissy93/networking-toolbox/HEAD/static/fonts/inter-v20-latin-700.woff2
--------------------------------------------------------------------------------
/.prettierrc:
--------------------------------------------------------------------------------
1 | {
2 | "plugins": ["prettier-plugin-svelte"],
3 | "singleQuote": true,
4 | "semi": true,
5 | "printWidth": 120
6 | }
7 |
--------------------------------------------------------------------------------
/static/fonts/fira-code-v27-latin-500.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lissy93/networking-toolbox/HEAD/static/fonts/fira-code-v27-latin-500.woff2
--------------------------------------------------------------------------------
/static/fonts/fira-code-v27-latin-600.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lissy93/networking-toolbox/HEAD/static/fonts/fira-code-v27-latin-600.woff2
--------------------------------------------------------------------------------
/static/fonts/fira-code-v27-latin-700.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lissy93/networking-toolbox/HEAD/static/fonts/fira-code-v27-latin-700.woff2
--------------------------------------------------------------------------------
/static/fonts/fira-sans-v18-latin-500.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lissy93/networking-toolbox/HEAD/static/fonts/fira-sans-v18-latin-500.woff2
--------------------------------------------------------------------------------
/static/fonts/fira-sans-v18-latin-600.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lissy93/networking-toolbox/HEAD/static/fonts/fira-sans-v18-latin-600.woff2
--------------------------------------------------------------------------------
/static/fonts/inter-v20-latin-regular.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lissy93/networking-toolbox/HEAD/static/fonts/inter-v20-latin-regular.woff2
--------------------------------------------------------------------------------
/src/routes/dns/zone/diff/+page.svelte:
--------------------------------------------------------------------------------
1 |
4 |
5 |
4 | Yes, we have an API! It's free to use, doesn't require an API key nor CORS.
5 | Try calling GET https://networkingtoolbox.net/api, or checkout the
6 | API Docs.
7 |
6 | If you use Networking Toolbox a lot, you might want to customize it, so that you feel right at home. Just head to 7 | the Settings page, where you can change the branding, colours, layout, behaviour and more. 8 |
9 | 10 |12 | Right-click on any tool to bookmark it. This will make it available offline and pin it to the top of your homepage. 13 |
14 | 15 |
17 | The app can be easily navigated with the keyboard alone. Use Ctrl + / to view all keybindings.
18 |
{error}
20 |25 | Offline quick guides, cheat sheets and reference info, for networking concepts, IP addressing, and common protocols 26 |
27 |
6 | Networking Toolbox is provided "as-is" with no warranty or guarantees.
7 | We cannot offer dedicated support for non-commercial users.
8 |
23 | For support packages, contact us at support@aliciasykes.com
24 |
25 | We offer support packages for businesses, including:
26 |
27 | Comprehensive IP address manipulation tools for IPv4 and IPv6. Convert between formats, calculate distances, 28 | generate addresses, and work with advanced IPv6 features. 29 |
30 |27 | Advanced network diagnostic tools for troubleshooting and analysis. Check DNS propagation, analyze email security 28 | policies, verify nameserver consistency, and diagnose network infrastructure issues. 29 |
30 |8 | {site.title} can be easily deployed to your own server. Just run the following command: 9 |
10 |docker run -p 8080:3000 lissy93/networking-toolbox
12 |
14 | You can also checkout our docker-compose.yml, using the
17 | lissy93/networking-toolbox image from
18 | DockerHub.
19 |
21 | Not using Docker, or don't have a server? 22 | We support other free hosting options, just take a look at our Deployment Docs. 23 |24 |
32 | Professional DNS record generation tools with built-in validation and best practices. Create bulk A/AAAA records, 33 | build validated CNAME chains, and plan MX configurations with proper fallback strategies. 34 |
35 |30 | Comprehensive DNS diagnostic and troubleshooting tools for network administrators. Verify DNS propagation, analyze 31 | email security policies, check certificate authority authorization, and diagnose nameserver consistency issues. 32 |
33 |29 | Professional DNS management tools for network administrators. Generate PTR records, create zone files, and manage 30 | reverse DNS lookups for both IPv4 and IPv6 networks. 31 |
32 |29 | DHCP configuration tools for network administrators. Generate vendor-specific options, build relay agent 30 | information, create class-based policies, and configure DHCP servers with complete subnet snippets. 31 |
32 |We don't use cookies.
16 |Networking Toolbox does not use cookies of any kind. We don't set, read, or store any cookies in your browser.
21 |26 | For storing your preferences (theme, layout, bookmarks), we use browser localStorage. Unlike cookies, localStorage 27 | data: 28 |
29 |36 | Learn more about what we store in our 37 | Privacy Policy. 38 |
39 |