Home
YouTube Scripts
  • Tailscale Script EA8300

Richard Lloyd USA

Richard Lloyd USARichard Lloyd USARichard Lloyd USA
Home
YouTube Scripts
  • Tailscale Script EA8300
More
  • Home
  • YouTube Scripts
    • Tailscale Script EA8300

Richard Lloyd USA

Richard Lloyd USARichard Lloyd USARichard Lloyd USA
  • Home
  • YouTube Scripts
    • Tailscale Script EA8300

Video Tutorial

Watch this video to Install Free VPN

Youtube Scripts

Tailscale Script R7000 EA8300

🚀 ULTIMATE TAILSCALE NODE SETUP (Linksys EA8300)


1️⃣ Initial Router Initialization


Primary Router Preparation for Tailscale


On the Primary Router's Web Portal (http://192.168.1.1) Log In: Navigate to Administration > Commands

Copy and Paste the following into the Commands BOX:


============== COPY ALL TEXT BELOW THIS LINE =======================


#Startup the following line is optional but nice to have

sleep 5; ntpclient -s -h time.google.com

# Ensure the Tailscale range is always trusted

route add -net 100.64.0.0 netmask 255.192.0.0 gw 192.168.1.2


=============== COPY ALL TEXT ABOVE THIS LINE ======================

                  

Click the ➔ [Save Startup] button at the bottom of the page


-----------------------------------------------------------------------------------------


Again on the Router Config Web Portal on (http://192.168.1.1)  Navigate to Administration > Commands


Copy and Paste the following into the Commands BOX


============== COPY ALL TEXT BELOW THIS LINE =======================


#Firewall Rule for 192.168.1.1 SMB router

# The Trust Rule (Tells the Samba server to allow the Tailscale IP range)

iptables -I INPUT -s 100.64.0.0/10 -j ACCEPT


=============== COPY ALL TEXT ABOVE THIS LINE ======================


 Click the ➔ [Save Firewall] button at the bottom of the page


On the (http://192.168.1.1) Router. Navigate to the Administration>Management tab on the router and reboot the primary router 



2 Initial Tailscale Router (192.168.1.2) Initialization


WIFI OFF: Turn your computer's WIFI connection OFF.


Direct Connection: Plug your computer directly into one of the router LAN ports using a single Ethernet cable.


Hard Reset: Hard reset the DD-WRT router by pushing the reset in button for 15 seconds OR log into the router interface go to Administration > Factory Defaults. Click the radio button to YES next to the Restore to Factory Defaults. Click on ➔ [Save & Apply].


Login: Type http://192.168.1.1 in a browser ➔ Press [ENTER] Create your Router Username and Password. Log back in.


Click on the Administration Tab. On the Management page, In the Web Access BOX, Click the Info Site Password Protection box to Enabled. Click on ➔ [Save & Apply].


Click on the Setup Tab > Basic Setup > WAN Connection Type Box. Choose [Disabled]. (This tells the router we are not using the WAN port).


Router Name: In the Optional Settings Box, change the Router Name to (DD-Cloud).


Performance: Change the Shortcut Forwarding Engine to [CTF] or On radio button. Set Flow Acceleration to [CTF & FA] if it's an option.


Router IP Setup (Network Setup > Router IP):


Local IP Address: 192.168.1.2 /24


Subnet Mask: 255.255.255.0 (MAY NOT BE REQUIRED if you see the /24 above you will not need it) 


Gateway Address: 192.168.1.1


Local DNS Address: 192.168.1.1


DHCP Box: Set the DHCP Server radio button to Disable. 


Below that uncheck the boxes next to: 


Use dnsmasq for DNS

DHCP-Authoritative 


Time Sync (NTP Client Settings Box): Set the time zone to your location. 


In the Server IP / Name box, type (time.google.com)


Finalize Phase 1: Click [Save] at the bottom of the page. 


Wireless: Navigate to the Wireless > Basic Settings Tab. On the Network Mode Box for each Wireless Interface, switch the setting to [Disabled].


Click [Save] at the bottom of the page.


SSH Services: Navigate to the Services tab. In the Secure Shell (SSH) Box, Enable Daemon by clicking on the enable radio button.


Clean up: Disable Telnet and WAN Traffic Counter. Click [Save and Apply] at the bottom of the page.


Physically Plug in your USB thumb drive if you have done so already, move on to the next step.


USB Config: On the Services>USB Tab, enable: Core USB Support, USB Storage Support, and Automatic Drive Mount. Click [Save and Apply].


Physically turn your router OFF and back ON to Reboot Router.


3 Physical Network Integration & Final Services


New Access Point: Your configured Tailscale node is now live at http://192.168.1.2.


Reconnect PC:  Disconnect your the EA8300 (Tailscale Node) from your PC. Reconnect your computer to your Main Router (192.168.1.1) via Wi-Fi or an Ethernet cable.


Bridge Routers: Connect an Ethernet cable from a LAN port on the Tailscale router (192.168.1.2) to a LAN port on your Main Router (192.168.1.1).


USB Installation: Physically install the USB thumb drive into the TAILSCALE router's USB port.


Web Portal: Type (http://192.168.1.2) in a browser ➔ Press ENTER log in if required.



4 Linux Drive Setup (Script: f.sh)


Verify Mount: Navigate to the Services>USB Tab The USB drive should automatically mount and display in the Disk Info box.


Open CMD: Open a CMD window (Run as administrator is optional).


SSH In: Type (ssh root@192.168.1.2) ➔ press [ENTER] Log In.


Once you are ssh logged into the router type (ping -c 4 google.com) ➔ Press ENTER


You should see the following:


PING www.google.com (142.251.186.102): 56 data bytes

64 bytes from 142.251.186.102: seq=0 ttl=109 time=27.183 ms

64 bytes from 142.251.186.102: seq=1 ttl=109 time=29.395 ms

64 bytes from 142.251.186.102: seq=2 ttl=109 time=32.356 ms

64 bytes from 142.251.186.102: seq=3 ttl=109 time=25.291 ms


--- google.com ping statistics ---

4 packets transmitted, 4 packets received, 0% packet loss

round-trip min/avg/max = 25.291/28.556/32.356 ms


If you do not get a response from google then some part of your configuration is not correct go back and check your physical connection is as I instructed, if that's not correct fix it. 


If it is correct and the ping is still not working Navigate back to the Setup Tab>Wan Connection Type drop down box and change from [Disabled] to [Automatic Configuration - DHCP] click

the [Save & Apply] button at the bottom of the page. Now set it back to [Disabled] click

the [Save & Apply] button at the bottom of the page. Reboot the router. 

SSH In: Type (ssh root@192.168.1.2) in the CMD box ➔ press [ENTER] Log In. 

Try the ping command again. 

 

Type (ping -c 4 google.com) ➔ Press ENTER


If the above does not work, reset your router (factory defaults) and follow my configuration instructions above EXACTLY. If you get the proper response we can move on.


Create Script using vi editor: 


Type (vi f.sh) ➔ press [ENTER]


Type (i) in the editor and copy/paste the following:


============== COPY ALL TEXT BELOW THIS LINE =======================


#!/bin/sh


TARGET_DRIVE="/dev/sda"

TARGET_DEV="/dev/sda1"


echo "------------------------------------------------"

echo "ATTENTION: COMMENCING NUCLEAR DRIVE WIPE"

echo "------------------------------------------------"


# 1. Force Unmount

if grep -qs "$TARGET_DRIVE" /proc/mounts; then

    echo "Unmounting all partitions on $TARGET_DRIVE..."

    umount -l "$TARGET_DRIVE"* 2>/dev/null

fi


# 2. Wipe the MBR and Partition Table (The Nuclear Fix)

# This clears the first 10MB, killing any ghost NTFS or Windows data

echo "Wiping MBR and Partition Table..."

dd if=/dev/zero of="$TARGET_DRIVE" bs=1M count=10 conv=notrunc

sync


# 3. Create a New Linux Partition Table

# Sequence: o (new DOS table), n (new partition), p (primary), 1 (number), 

# [default start], [default end], t (type), 83 (Linux ID), w (write)

echo "Creating new Linux partition table..."

printf "o\nn\np\n1\n\n\nt\n83\nw\n" | fdisk "$TARGET_DRIVE" > /dev/null 2>&1

sync


# 4. Format to ext4

echo "Formatting $TARGET_DEV as ext4 (This may take a minute)..."

mkfs.ext4 -F "$TARGET_DEV"


# 5. Disk Integrity Check

echo "Verifying filesystem health..."

e2fsck -f -p "$TARGET_DEV"

CHECK_VAL=$?


# 6. Get UUID and Scrub it

FULL_UUID=$(blkid -s UUID -o value "$TARGET_DEV" | tr -d ' \n\r"')


if [ -z "$FULL_UUID" ]; then

    echo "ERROR: UUID not found. The hardware may be failing or write-protected."

    exit 1

fi


# 7. Extract last 4 for Labeling

LABEL=${FULL_UUID#${FULL_UUID%????}}

echo "Cleaned UUID: $FULL_UUID"

echo "New Target Label: $LABEL"


# 8. Apply the Label

tune2fs -L "$LABEL" "$TARGET_DEV"


if [ $? -eq 0 ]; then

    echo "------------------------------------------------"

    echo "SUCCESS: $TARGET_DEV is now ext4, Partition ID 83,"

    echo "and labeled '$LABEL'. You now have a freshly FORMATED EXT4 LINUX DRIVE"

    echo "------------------------------------------------"

fi


=============== COPY ALL TEXT ABOVE THIS LINE ======================


Press [ESC], type (:wq) ➔ press [ENTER]


Type (chmod +x f.sh) ➔ press [ENTER] 


Type (./f.sh) ➔ press [ENTER] Wait for confirmation.


Reboot: Type (reboot) ➔ press [ENTER] (You will be disconnected).


#########################################################################################


5 Mounting & Swap File Script: 


After the router reboots, Type (http://192.168.1.2) in a browser ➔ Press ENTER log in if required


Navigate to the Services >USB Tab


Copy the /dev/sda1 [UUID number] [4587F6E6-05D4-4EB8-9AE3-E3523FF68FE0]  (Exclude "UUID" label and (/DCE/v4) at the end. Copy and paste the number in the (Mount Partition to /opt) box. 


Click [Save & Apply] at the bottom of the page.


SSH In: Type (ssh root@192.168.1.2) ➔ press [ENTER] Log In.


Verify: 


In CMD Window type (df -h -T) ➔ press [ENTER] to ensure /dev/sda1 is mounted on /opt. You should see will vary depending on the size of your drive: 


/dev/sda1            ext4           14.1G      2.0M     13.4G   0% /opt


Reboot: Type (reboot) ➔ press [ENTER] (You will be disconnected).


SSH In: Type (ssh root@192.168.1.2) ➔ press [ENTER] Log In.

------------------------------------------------------------------------------------------------------------------------


Create a Swap File Script:


Type (vi s.sh) ➔ press [ENTER] In the vi editor Type (i) copy and paste the following:


============== COPY ALL TEXT BELOW THIS LINE =======================


#!/bin/sh


# --- 1. DEFINE VARIABLES ---

SWAP_PATH="/opt/.swap"

SIZE_MB=2048

BLOCK_SIZE=64

COUNT=$((SIZE_MB / BLOCK_SIZE))


echo "------------------------------------------------"

echo "Initializing Swap Setup"

echo "------------------------------------------------"


# --- 2. INTELLIGENT DEACTIVATION ---

# Check if any swap is actually active in /proc/swaps

if grep -q "$SWAP_PATH" /proc/swaps; then

    echo "Active swap detected at $SWAP_PATH. Deactivating..."

    swapoff "$SWAP_PATH" >/dev/null 2>&1

else

    echo "No active swap found for $SWAP_PATH. Skipping deactivation."

fi


if [ -f "$SWAP_PATH" ]; then

    echo "Removing existing swap file to ensure a clean allocation..."

    rm -f "$SWAP_PATH"

fi


# --- 3. ALLOCATE SPACE WITH PROGRESS METER ---

echo "Allocating ${SIZE_MB}MB at $SWAP_PATH..."

echo -n "Progress: ["


i=0

while [ $i -lt $COUNT ]; do

    dd if=/dev/zero bs=1M count=$BLOCK_SIZE >> "$SWAP_PATH" 2>/dev/null

    echo -n "."

    i=$((i + 1))

done


echo "] 100%"


# --- 4. PERMISSIONS & FORMATTING ---

chmod 600 "$SWAP_PATH"

echo "Formatting filesystem as swap..."

mkswap "$SWAP_PATH" >/dev/null 2>&1


# --- 5. ACTIVATION WITH KERNEL CHECK ---

echo "Attempting to activate swap space..."


# Check if swapon command exists at all

if ! command -v swapon >/dev/null 2>&1; then

    echo "CRITICAL ERROR: 'swapon' command not found. Your firmware lacks swap tools."

    exit 1

fi


swapon "$SWAP_PATH" 2>/dev/null


# --- 6. VERIFICATION ---

if [ $? -eq 0 ]; then

    echo "------------------------------------------------"

    echo "SUCCESS: 2GB Swap is now LIVE."

    grep -E 'Swap(Total|Free)' /proc/meminfo

    echo "------------------------------------------------"

else

    echo "------------------------------------------------"

    echo "FAILED: The kernel rejected the swap activation."

    echo "Reason: likely 'Function not implemented' (No Kernel Support)."

    echo "------------------------------------------------"

    rm -f "$SWAP_PATH" # Clean up the 2GB file if it can't be used

    exit 1

fi


=================== COPY ALL TEXT ABOVE THIS LINE ======================


Press [ESC], type (:wq) ➔ press [ENTER]


Type (chmod +x s.sh) ➔ press [ENTER]


Type (./s.sh) This will take a bit.


You should see something like:


------------------------------------------------

Initializing Swap Setup

------------------------------------------------

No active swap found for /opt/.swap. Skipping deactivation.

Allocating 2048MB at /opt/.swap...

Progress: [................................] 100%

Formatting filesystem as swap...

Attempting to activate swap space...

------------------------------------------------

SUCCESS: 2GB Swap is now LIVE.

SwapTotal:       2097148 kB

SwapFree:        2097148 kB

------------------------------------------------


5️⃣ Entware & Tailscale Installation Scripts: e.sh & t.sh


Entware script: 


In CMD Window type (vi e.sh) ➔ press [ENTER] Type (i) copy and paste the following:


============== COPY ALL TEXT BELOW THIS LINE =======================


#!/bin/sh


# --- 1. ARCHITECTURE DETECTION ---

ARCH=$(uname -m)

case "$ARCH" in

    "armv7l")  REPO="http://bin.entware.net/armv7sf-k3.2/installer/generic.sh" ;;

    "aarch64") REPO="http://bin.entware.net/aarch64-k3.10/installer/generic.sh" ;;

    "mips"|"mipsel") REPO="http://bin.entware.net/mipselsf-k3.4/installer/generic.sh" ;;

    *) echo "ERROR: Architecture $ARCH not supported."; exit 1 ;;

esac


# --- 2. INTERNET & CONNECTIVITY CHECK ---

echo "Checking internet connectivity..."

MAX_RETRIES=5

COUNT=0

while [ $COUNT -lt $MAX_RETRIES ]; do

    if ping -c 1 8.8.8.8 >/dev/null 2>&1; then

        echo "Internet OK."

        break

    fi

    echo "Waiting for WAN... (Attempt $((COUNT+1))/$MAX_RETRIES)"

    sleep 5

    COUNT=$((COUNT + 1))

done


if [ $COUNT -eq $MAX_RETRIES ]; then

    echo "ERROR: No internet connection. Please check your WAN cable/settings."

    exit 1

fi


# --- 3. DATE & TIME SYNC (NTP CHECK) ---

# SSL/HTTPS will fail if the router thinks it is 1970.

echo "Syncing system clock with NTP..."

ntpclient -s -h time.google.com >/dev/null 2>&1


CURRENT_YEAR=$(date +%Y)

if [ "$CURRENT_YEAR" -lt 2024 ]; then

    echo "WARNING: System date is incorrect ($CURRENT_YEAR). SSL downloads may fail."

    echo "Attempting manual sync..."

    # Manual backup sync if ntpclient failed

    date -s "2026-04-05 12:00:00" # Sets to roughly today's date

fi

echo "Current System Date: $(date)"


# --- 4. PRE-FLIGHT & MOUNT ---

mount -o remount,rw,exec /opt

if [ ! -w "/opt" ]; then

    echo "ERROR: /opt is not writeable. Check USB mount."

    exit 1

fi


# --- 5. INSTALLATION ---

echo "Starting Entware installation for $ARCH..."

cd /opt

wget -O - "$REPO" | sh


# Update Path for the current session

export PATH=/opt/bin:/opt/sbin:$PATH


# --- 6. CORE UTILITIES & TAILSCALE ---

/opt/bin/opkg update

/opt/bin/opkg install wget-ssl ca-bundle ca-certificates nano tailscale 


# --- 7. TUN DEVICE SETUP ---

if [ ! -d /dev/net ]; then mkdir -p /dev/net; fi

if [ ! -c /dev/net/tun ]; then mknod /dev/net/tun c 10 200; fi


echo "------------------------------------------------"

echo " SUCCESS: Entware and Tailscale ($ARCH) Installed."

echo " System Time: $(date)"

echo "Congratulations! you just installed Entware Software Package Manager"

echo " And Tailscale on Your router!"

echo "------------------------------------------------"


================== COPY ALL TEXT ABOVE THIS LINE ====================== 


Press [ESC], type (:wq) ➔ press [ENTER]

Type (chmod +x e.sh) ➔ press [ENTER]

Type (./e.sh) ➔ press [ENTER]


-------------------------------------------------------------------------------------------


Type (vi UpdateTailScale.sh) ➔ press [ENTER] type (i) copy and paste the following:


============== COPY ALL TEXT BELOW THIS LINE =======================


#!/bin/sh


# --- 1. ENVIRONMENT & LIBRARY FIX ---

# This line tells the system to look in /opt/lib FIRST

export LD_LIBRARY_PATH=/opt/lib:/opt/usr/lib:/lib:/usr/lib

export PATH=/opt/bin:/opt/sbin:$PATH


if ! grep -q "/opt" /proc/mounts; then

    echo "ERROR: /opt is not mounted."

    exit 1

fi


# --- 2. ARCHITECTURE ---

ARCH=$(uname -m)

case "$ARCH" in

    "armv7l")  REPO="http://bin.entware.net/armv7sf-k3.2/installer/generic.sh"; TS_ARCH="arm" ;;

    "aarch64") REPO="http://bin.entware.net/aarch64-k3.10/installer/generic.sh"; TS_ARCH="arm64" ;;

    "mips"|"mipsel") REPO="http://bin.entware.net/mipselsf-k3.4/installer/generic.sh"; TS_ARCH="mips" ;;

    *) echo "ERROR: $ARCH not supported."; exit 1 ;;

esac


# --- 3. TIME & DNS ---

date -s "2026-04-09 12:00:00" >/dev/null 2>&1

[ ! -f /etc/resolv.conf ] || grep -q "8.8.8.8" /etc/resolv.conf || echo "nameserver 8.8.8.8" > /etc/resolv.conf


# --- 4. ENTWARE REPAIR ---

if [ ! -f "/opt/bin/opkg" ]; then

    /usr/bin/wget -O - "$REPO" | sh

fi


/opt/bin/opkg update


# --- 5. THE DOWNLOADER SELECTION ---

if [ -f "/opt/bin/wget" ]; then

    WGET_BIN="/opt/bin/wget"

else

    WGET_BIN="/usr/bin/wget"

fi


# --- 6. TAILSCALE UPGRADE ---

echo "Downloading Tailscale for $TS_ARCH using $WGET_BIN..."

cd /tmp

$WGET_BIN --no-check-certificate "https://pkgs.tailscale.com/stable/tailscale_latest_${TS_ARCH}.tgz" -O ts.tgz


if [ -s "ts.tgz" ]; then

    echo "Upgrading binaries..."

    tar xzf ts.tgz

    [ -f /opt/etc/init.d/S06tailscaled ] && /opt/etc/init.d/S06tailscaled stop

    

    TS_DIR=$(ls -d tailscale_*)

    cp "$TS_DIR/tailscale" /opt/bin/tailscale

    cp "$TS_DIR/tailscaled" /opt/sbin/tailscaled

    chmod +x /opt/bin/tailscale /opt/sbin/tailscaled

    

    rm -rf tailscale_* ts.tgz

    echo "Upgrade complete."

else

    echo "Manual upgrade failed. Using existing version."

fi


echo "------------------------------------------------"

echo " SUCCESS: Tailscale $(/opt/bin/tailscale version | head -n 1)"

echo "------------------------------------------------"


=============== COPY ALL TEXT ABOVE THIS LINE ====================== 

Press [ESC], type (:wq) ➔ press [ENTER]

Type (chmod +x UpdateTailScale.sh) ➔ press [ENTER]

Type (cp UpdateTailScale.sh /opt)


********************************************************************

The above command copies UpdateTailScale.sh update script to the /opt directory

permanently, where it can be run any time to update Tailscale.

To use the update script you log in with ssh and Type (/opt/UpdateTailScale.sh) ➔ press [ENTER]

********************************************************************** 

 

Type (/opt/UpdateTailScale.sh) ➔ press [ENTER]  


Type (tailscale status) ➔ press [ENTER]

You should see: Logged out.


6️⃣ Automation (Startup & Firewall)


Tailscale Node Startup Commands:


On the Router Config Web Portal (http://192.168.1.2), Navigate to Administration > Commands


Copy and Paste the following into the Commands BOX:


============== COPY ALL TEXT BELOW THIS LINE =======================


#STARTUP
MAX_RETRIES=360; COUNT=0; while [ $COUNT -lt $MAX_RETRIES ]; do if ping -c 1 8.8.8.8 >/dev/null 2>&1; then break; fi; sleep 2; COUNT=$((COUNT + 1)); done; ntpclient -s -h time.google.com

sleep 5; echo 8192 > /proc/sys/vm/min_free_kbytes; if [ -f "/opt/.swap" ]; then touch /opt/.swap; swapon /opt/.swap; fi; if [ -e /proc/sys/vm/swappiness ]; then echo 10 > /proc/sys/vm/swappiness; fi

if [ -d "/opt/bin" ]; then /opt/etc/init.d/rc.unslung start; sleep 2; echo 1 > /proc/sys/net/ipv4/ip_forward; /opt/bin/tailscale up --advertise-routes=192.168.1.0/24 --accept-dns=false; fi

( while true; do sleep 600; ntpclient -s -h pool.ntp.org; echo 1 > /proc/sys/net/ipv4/ip_forward; /opt/bin/tailscale up --advertise-routes=192.168.1.0/24 --accept-dns=false; if [ -d "/tmp/dnsmasq" ]; then if ! grep -q "100.100.100.100" /tmp/dnsmasq/resolv.conf; then echo "server=/tailscale.net/100.100.100.100" >> /tmp/dnsmasq/resolv.conf; killall -HUP dnsmasq; fi; fi; done ) &

( while true; do sleep 400; if ! /opt/bin/tailscale status >/dev/null 2>&1; then sleep 30; if ! /opt/bin/tailscale status >/dev/null 2>&1; then reboot; fi; fi; if ! ping -c 1 8.8.8.8 >/dev/null 2>&1; then sleep 10; if ! ping -c 1 1.1.1.1 >/dev/null 2>&1; then reboot; fi; fi; done ) &


=============== COPY ALL TEXT ABOVE THIS LINE ======================



Click the  ➔ [Save Startup] button at the bottom of the page


-------------------------------------------------------------------------------------------


Again on the Router Config Web Portal on (http://192.168.1.2) Navigate to Administration > Commands


Copy and Paste the following into the Commands BOX:


============== COPY ALL TEXT BELOW THIS LINE =======================


#FIREWALL

# Open the Forwarding Gates (Allows traffic to cross between interfaces)

iptables -I FORWARD -i tailscale0 -o br0 -j ACCEPT

iptables -I FORWARD -i br0 -o tailscale0 -m state --state RELATED,ESTABLISHED -j ACCEPT


=============== COPY ALL TEXT ABOVE THIS LINE ======================


Click the  ➔ [Save Firewall] button at the bottom of the page



############################################################################################



 

On the (http://192.168.1.2) Router. Navigate to the Administration>Management tab on the router and reboot the Tailscale router 


In the command (CMD) Window

SSH back in: Type (ssh root@192.168.1.2) ➔ press [ENTER] Log In.

Type (tailscale status) ➔ press [ENTER] 

You should see this output:

Logged out.

Log in at: https://login.tailscale.com/d/c7fb1ae324cab 

*****This will be a unique output on your router.*****


Copy paste it what the router outputs in Notepad for now.


Create your free account at https://login.tailscale.com/start 

Log in to your free account https://login.tailscale.com/login

paste https://login.tailscale.com/d/c7fb1ae324cab into the same browser that you're logged into.

Authorize your device and click on connect

It should say Login successful and take you to your Tailscale console

There you should see your new machine listed.

Click on the three [...] to the left of your machine and choose [Edit route settings…]

You should see:


Edit route settings of dd-cloud


Subnet routes


[Connect to devices you can’t install Tailscale on by advertising IP ranges as subnet routes. Learn more]


1 route is advertised but not approved


Click on the box next to 192.168.1.0/24 CLICK [SAVE]


You may want to 


Exit node

Allow your network to route internet traffic through this machine. Learn more


You will also see: 

Key expiry is enabled

If this machine’s key expires, your relayed traffic may be interrupted until you reauthenticate.

If you don't want that to happen then 

Click on the three [...] to the left of your machine and choose Disable key expiry.


Install the Tailscale app on your mobile phone/device IOS or Android

I'm using Android

Download>Open 


Accept the connection request


Login using the credentials you used to create your Tailscale account.


Authorize if required


Click Connect


Accept the notifications (up to you) Allow


On the top right of the app click on the icon (Settings)

Click on subnet routing

Make sure that Use Tailscale subnets is ON or activated

Check your Web Tailscale console, your phone should be listed


Copyright © 2026 RICHARDLLOYDUSA - All Rights Reserved.


Powered by

This website uses cookies.

We use cookies to analyze website traffic and optimize your website experience. By accepting our use of cookies, your data will be aggregated with all other user data.

Accept