Site Tools


advanced-dhcpdns

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
advanced-dhcpdns [2023/04/30 00:53] – [DHCP Client (WAN)] -formatting-strikethrough removed-restored due to commit 8897684 hogwildadvanced-dhcpdns [2023/08/05 19:13] (current) – [DHCP Client (WAN)] -condense hogwild
Line 12: Line 12:
 {{:pasted:20220119-170756.png}}\\  \\ {{:pasted:20220119-170756.png}}\\  \\
  
-**Enable DNSSEC support: ** DNSSEC is a way to secure DNS by introducing authentication for DNS servers. This prevents DNS hacking and poisoning. DNSSEC is not encrypted, to keep it backward-compatible with traditional DNS. If the authoritative DNS server is DNSSEC-enabled, enabling DNSSEC ensures your DNS queries are answered by that authoritative DNS server, and not an imposter. Enable this if your chosen DNS server supports it for enhanced security.+**Enable DNSSEC support: ** DNSSEC is a way to secure DNS by introducing authentication for DNS servers. This prevents DNS hacking and poisoning. If the authoritative DNS server has DNSSEC, enabling DNSSEC ensures your DNS queries are answered by that DNS server, and not an imposter.
  
-**Use dnscrypt-proxy:  **DNSCrypt works to encrypt DNS resolution. When a DNSCrypt-enabled server is chosen, a unique key pair is generated and regenerated every hour. Queries are then encrypted using the generated key pair before being sent to the server, usually on TCP port 443. The reply is similarly encrypted. Checking //Use dnscrypt-proxy// enables FreshTomato'built-in dnscrypt proxy client. The dnscrypt module and Stubby cannot both be used at the same time.+DNSSEC is not encrypted, to keep it backward-compatible with traditional DNS. Enable this if your chosen DNS server supports it for enhanced security. 
 + 
 +**Use dnscrypt-proxy:  **DNSCrypt encrypts DNS resolution. When a DNSCrypt-enabled server is chosen, a unique key pair is generated and regenerated every hour. Queries are then encrypted using the generated key pair before being sent to the server, usually on TCP port 443. The reply is similarly encrypted. Checking //Use dnscrypt-proxy// enables the built-in dnscrypt proxy client. The dnscrypt module and Stubby cannot be used at the same time. 
 + 
 + \\ When dnscrypt-proxy is checked, the following options/fields are revealed:
  
  \\  \\
  
-When dnscrypt-proxy is checked, the following options/fields are revealed:+  * Ephemeral Keys If checked, a new key pair is generated for each DNS query. Use this with care. It is very cpu-intensive, \\ so it may slow DNS resolution.
  
-  * Ephemeral Keys - If checked, a new key pair is generated for each DNS query. Use with care, as this is very cpu-intensive. It may slow DNS resolution. 
   * Manual Entry - If enabled, 3 more fields are displayed:    * Manual Entry - If enabled, 3 more fields are displayed: 
-    * Resolver Address - The IP address of the dnscrypt-enabled DNS server, for example 1.2.3.4; +    * Resolver Address - This is The IP address of the dnscrypt-enabled DNS server. 
-    * Provider Name - The name of the DNS provider, for instance FreshTomato +    * Provider Name - This is the name of the DNS provider, for instance FreshTomato. 
-    * Provider Public Key - public key provided by the DNSCRYPT-enabled DNS provider used to generate a valid key pair \\ e.g. 0000:1111:2222:3333:4444:5555:6666:7777:8888:9999:AAAA:BBBB:CCCC:DDDD:EEEE:FFFF +    * Provider Public Key - The public key provided by the DNSCRYPT-enabled DNS provider (to generate a key pair
-  * Resolver - This dropdown list currently contains about 200 DNS servers. Some support DNSSEC. Some don't log queries. Some are filtered. To help you choose a DNSCrypt DNS provider, import the file /etc/dnscrypt-resolvers.csv in a spreadsheet. Once chosen, the server's IP address, provider name, and public key can be extracted from that file. + 
-  * Priority - Leave this at //no-resolv// to prevent DNS leaks This should never be a choice when using DNSCRYPT. To prevent leaks, also enable //Intercept DNS port//. +  * Resolver - This dropdown list currently contains about 200 DNS servers. 
-  * Local Port - Specifies the port on which dnscrypt-proxy communicates with FreshTomato DNS. It is recommended that you leave this at 40 unless you know why you're changing it. Do NOT set it to 53, or it might create a loop. +    * Some support DNSSEC.  
-  * Log Level When enabledthis sets the level of messages logged to the system log.+    * Some don't log queries.  
 +    * Some are filtered. 
 + 
 +  * Priority - This should be left at //no-resolv// to prevent DNS leaks This should never be a choice when using DNSCRYPT. \\ Also, to prevent leaks, enable //Intercept DNS port//. 
 + 
 +  * Local Port - Specifies the port on which dnscrypt-proxy communicates with FreshTomato DNS. Leave this at 40 \\ unless you're a highly advanced user. Do NOT set it to 53, as doing so may create a loop. 
 + 
 + \\   \\ To help you choose a DNSCrypt DNS provider, import the file /etc/dnscrypt-resolvers.csv in a spreadsheet. Once chosen\\ the server's IP address, provider name, and public key can be taken from that file.
  
-**Use Stubby (DNS-over-TLS):** This enhances DNS privacy. Checking this enables Stubby, a DNS Stub resolver. DNS over TLS (or "DoT") sends DNS queries over a secure connection, encrypted with TLS. TLS is the same technology that encrypts secure Web traffic. This prevents third parties from seeing your DNS queries.+**Use Stubby (DNS-over-TLS):** This enhances DNS privacy. Checking this enables Stubby, a DNS Stub resolver. \\ DNS over TLS (or "DoT") sends DNS queries over a secure connection, encrypted with TLS. TLS is the same technology \\ that encrypts secure Web traffic. This prevents third parties from seeing your DNS queries.
  
  \\  \\
Line 40: Line 50:
  \\  \\
  
-**Upstream resolvers:** Here, you can specify the upstream servers responsible for performing the actual name resolution.+**Upstream resolvers:** Here, specify the upstream servers responsible for performing the actual name resolution.
  
 **Priority:** **Priority:**
  
-  * Strict-Order:  Stubby is tried first, but if it experiences issues, fallback to other methods of name resolution, such as standard DNS. +  * Strict-Order Stubby is tried first, but if issues aries, fallback will occur to other name resolution methodslike standard DNS. 
-  * No-Resolv:  If Stubby fails or has issues, there will be no fallback to other DNS resolution methods anywhere+  * No-Resolv If Stubby fails or has issues, there will be no fallback to other DNS resolution methods. 
-  * None:  This adds stubby as a resolution method for the built-in dnsmasq. This alone does not guarantee.+  * None This adds Stubby as a resolution method for dnsmasq. This alone does not guarantee.
  
-**Local Port:** The port number on which Stubby will serve clients. Note that dnsmasq will be the only client for Stubby, but it is dnsmasq that serves clients.+ \\ 
 + 
 +**Local Port:** This is the port number on which Stubby serves clients. Dnsmasq will be the only client for Stubby, \\ but it is dnsmasq that serves clients.
  
-**Log Level:** Allows you to choose what level of details is written in log entries.+**Log Level:** Here, you can choose what level of details is written in log entries.
  
 **Force TLS1.3:**  Enforces usage of the latest TLS version for encryption. This must be supported upstream. **Force TLS1.3:**  Enforces usage of the latest TLS version for encryption. This must be supported upstream.
  
-**WINS (for DHCP):** Here you specify the IP address of a WINS Server that will be given to DHCP clients. This does NOT actually enable the WINS service. FreshTomato's WINS Server function is enabled on the //[[:nas-samba|File Sharing]]// menu.+**WINS (for DHCP):** Herespecify the IP address of a WINS Server to be be given to DHCP clients. This doesn'actually enable WINS. FreshTomato's WINS Server function is enabled on the [[:nas-samba|File Sharing]] menu.
  
-Windows Internet Name Service (WINS) is a legacy name registration and resolution service that maps computer NetBIOS names to IP addresses. Officially, WINS is outdated and largely obsolete. DNS was supposed to have replaced WINS functionality. However, Microsoft has not officially deprecated WINS. WINS may still be necessary for some Windows LAN browsing functions, especially on old Windows versions.+Windows Internet Name Service (WINS) is a legacy name resolution service that maps NetBIOS names to IP addresses. Officially, it'outdated and largely obsolete. DNS was supposed to replace WINS functionality. However, Microsoft has not officially deprecated WINS. WINS may still be necessary for some Windows LAN browsing functions on old Windows versions.
  
 **DHCPC Options:**  In this field you can enter custom configuration settings for the dhcp client. **DHCPC Options:**  In this field you can enter custom configuration settings for the dhcp client.
  
-**Reduce Packet Size:** //udhcpc// (the DHCP client FreshTomato uses to obtain a WAN IP address) has a problem. It has a DHCP discovery packet size 590 bytes long. However, DHCP relay servers can only handle DHCP discovery packets up to 576 bytes. If there are DHCP relay servers between your FreshTomato router and your Internet provider's DHCP server, FreshTomato might fail to acquire a DHCP lease on the WAN interface.  The extra bytes appeared to be entirely padding, and not necessary.  FreshTomato developers eliminated the padding, which reduced udhcpc's DHCP discovery packet size to only 331 bytes. This 331 byte size eventually became FreshTomato'default setting. This way, udhcpc can successfully obtain a DHCP lease from a provider which might have DHCP relays. However, some users may not be able to obtain a WAN IP address unless they disable this feature. (Default: Enabled). Please note this has now been removed from the FT GUI.+**Reduce Packet Size:** //udhcpc// (the DHCP client FreshTomato uses to obtain a WAN IP address) has a problem. It has a DHCP discovery packet size 590 bytes long. However, DHCP relay servers can only handle DHCP discovery packets up to 576 bytes. If there are DHCP relay servers between your FreshTomato router and your Internet provider's DHCP server, FreshTomato might fail to acquire a DHCP lease on the WAN interface. 
 + 
 +The extra bytes were entirely padding, and therefore, unnecessary.  FreshTomato developers eliminated the padding, reducing udhcpc's DHCP discovery packet size to 331 bytes. This 331 byte size eventually became the default setting. As a result, udhcpc can successfully obtain a DHCP lease from an ISP with DHCP relays. However, some users may not be able to obtain a WAN IP address unless they disable this feature. (Default: Enabled).
  
  
Line 89: Line 103:
  \\  \\
  
-**Solve .onion using Tor** This option will cause Tor to resolve ".onion" domains, (if Tor is enabled). This allows proper DNS resolution on the Tor network.+**Solve .onion using Tor:** If Tor is enabled, this option causes it to resolve ".onion" domains. This allows proper DNS resolution on the Tor network
 + 
 +FreshTomato has a built-in Tor client. For more information about this, see the [[advanced-tor|TOR]] page.
  
 **Maximum active DHCP leases:** Sets the maximum allowed active DHCP leases at one time. (Default: 255). **Maximum active DHCP leases:** Sets the maximum allowed active DHCP leases at one time. (Default: 255).
Line 95: Line 111:
 **Static lease time:** Sets the absolute maximum valid time for any DHCP lease. **Static lease time:** Sets the absolute maximum valid time for any DHCP lease.
  
-  * Same as Normal Lease Time\\ Static lease time remains the same as the normal (1440 minute) lease time. (Default.)+  * Same as Normal Lease Time\\ Static lease time is the same as normal (1440 minute) lease time. (Default.)
   * Infinite\\ Static lease time is infinity   * Infinite\\ Static lease time is infinity
   * Custom\\ This setting allows you to enter a custom Static DHCP lease time.   * Custom\\ This setting allows you to enter a custom Static DHCP lease time.
  
-To retain leases after rebooting the router, please see this [[retain_dhcp_lease_info_after_a_reboot|HOWTO]] for additional information on non-volatile dhcp leases.+To retain leases after rebooting the router, please see this [[retain_dhcp_lease_info_after_a_reboot|HOWTO]] for additional information on non-volatile DHCP leases.
  
-**Announce IPv6 on LAN (SLAAC): **Enabling this turns on router advertisements for IPv6 //Stateless Address Autoconfiguration (SLAAC)//  protocol. This allows hosts to self-configure an IP address with minimal contact with a server.+**Announce IPv6 on LAN (SLAAC): **Enabling this turns on router advertisements for IPv6 //(SLAAC)//  protocol. This protocol allows hosts to self-configure an IPv6 address with minimal contact with a server.
  
   - The client sends out an RS (router solicitation) ICMP packet.    - The client sends out an RS (router solicitation) ICMP packet. 
   - The nearest router responds with an RA (router advertisement) packet.    - The nearest router responds with an RA (router advertisement) packet. 
-  - The client uses the IPv6 prefix from the RA packet as the first 64 bits of its address. It then derives the last 64 bits of its address using the EUI-64 process or a randomization algorithm.+  - The client uses the IPv6 prefix from the RA packet as the first 64 bits of its address. It then derives the last 64 bits \\ of its address using the EUI-64 process or a randomization algorithm.
  
 **Announce IPv6 on LAN (DHCP):**  Checking this makes FreshTomato enable router advertisements using IPv6 DHCP. **Announce IPv6 on LAN (DHCP):**  Checking this makes FreshTomato enable router advertisements using IPv6 DHCP.
Line 115: Line 131:
 **Mute dhcpv4 logging:**  Enabling this stops FreshTomato from logging IPv4 dhcp activity. (Default: Disabled). **Mute dhcpv4 logging:**  Enabling this stops FreshTomato from logging IPv4 dhcp activity. (Default: Disabled).
  
-**Mute dhcpv6 logging: **Enabling this stops FreshTomato from logging IPv6 dhcp activity. (Default: Disabled).+**Mute dhcpv6 logging:  **Enabling this stops FreshTomato from logging IPv6 dhcp activity. (Default: Disabled).
  
 **Mute RA logging:**  Enabling this prevents logging of Router Advertisement activity. **Mute RA logging:**  Enabling this prevents logging of Router Advertisement activity.
Line 123: Line 139:
 {{:pasted:20220119-172400.png}}\\  \\ {{:pasted:20220119-172400.png}}\\  \\
  
-**Prevent client auto DoH**: Modern browsers such as Firefox have built-in function called DNS Over HTTP(s). When DoH is enabled, a browser can bypass the system's DNS server. Enabling the Prevent client auto DOH option prevents DoH communication. This is helpful for getting FreshTomato'Adblock function to work properly, since Adblock relies on unencrypted DNS resolution.+**Prevent client auto DoH**:  Modern browsers include a function called DNS Over HTTP(s). When DoH is enabled, a browser can bypass the system's DNS server. Enabling this option prevents DoH communication. This is helpful for getting the Adblock function to work properly, since Adblock relies on unencrypted DNS resolution.
  
-**Enable DNS Rebind protection**DNS rebind protection is a type of malicious attack against domain resolution. Note that enabling this may have secondary effects. (Default: Enabled).+**Enable DNS Rebind protection:**  DNS rebind is a type of malicious attack against domain resolution. Enabling this may have secondary effects. (Default: Enabled).
  
-**Forward local domain queries to the upstream DNS**Enabling this forwards local domains to the router's upstream DNS server. Avoid using this unless you have a fully (publicly)-registered domain in use on your LAN.+**Forward local domain queries to the upstream DNS:**  Enabling this forwards local domains to the router's upstream DNS server. Avoid using this unless you have a fully (publicly)-registered domain on your LAN.
  
-**Enable multicast DNS:** Checking this enables an implementation of Avahi mDNS. Avahi is system that enables programs to publish and discover services and hosts running on a LAN. It is a zero-configuration implementation which includes multicast service discovery via the mDNS/DNS-SD protocol suite. "Bonjour" (in Apple MacOS X) and "Zeroconf" are technologies compatible with Avahi.+**Enable multicast DNS:**  Checking this enables an implementation of Avahi mDNS. 
 + 
 +Avahi is system that enables programs to publish and discover services and hosts running on a LAN. It is a zero-configuration implementation which includes multicast service discovery via the mDNS/DNS-SD protocol suite. "Bonjour" (in Apple MacOS X) and "Zeroconf" are technologies compatible with Avahi.
  
 **Enable reflector** FIXME **Enable reflector** FIXME
  
-**Custom configuration: **This feature allows you to add custom options to the dnsmasq configuration file.+**Custom configuration: ** In this field,** **you can to add custom options to the dnsmasq configuration file.
  
  
 ===== TFTP Server ===== ===== TFTP Server =====
- 
- \\ 
- 
-{{:pasted:20230425-142248.png?778x164}} 
- 
- \\ 
  
 **Enable TFTP**: Enabling this starts dnsmasq's TFTP server with the "--tftp-no-fail" options enabled by default. This prevents dnsmasq issues, for example, if TFTP root becomes unavailable. **Enable TFTP**: Enabling this starts dnsmasq's TFTP server with the "--tftp-no-fail" options enabled by default. This prevents dnsmasq issues, for example, if TFTP root becomes unavailable.
Line 148: Line 160:
 **TFTP root path**: Text entered here defines where TFTP root is located in the filesystem. **TFTP root path**: Text entered here defines where TFTP root is located in the filesystem.
  
-**PXE on LANx (brx)**: Enbables PXE (Pre Boot eXecution Environment) on one or more bridges. PXE was designed for diskless clients. A PXE client can obtain an IP address via DHCP and, once obtained, download boot code via a TFTP location. Syslinux is a good example of how these principles/procedures in action.+**PXE on LANx (brx)**: Enbables PXE (Pre Boot eXecution Environment) on one or more bridges. PXE was designed for diskless clients. A PXE client can obtain an IP address via DHCP and, once obtained, download boot code via a TFTP location. Syslinux is a good example of this in action.
  
  
-===== DHCP / DNS Notes =====+===== DHCP/DNS/TFTP Notes =====
  
   * Do not use results from Cloudflare's site: [[https://1.1.1.1/help|https://1.1.1.1/help]]. That webpage is likely to provide invalid results. Instead, use: [[https://rootcanary.org/test.html|https://rootcanary.org/test.html]]   * Do not use results from Cloudflare's site: [[https://1.1.1.1/help|https://1.1.1.1/help]]. That webpage is likely to provide invalid results. Instead, use: [[https://rootcanary.org/test.html|https://rootcanary.org/test.html]]
advanced-dhcpdns.1682812408.txt.gz · Last modified: 2023/04/30 00:53 by hogwild