Browse Source

Add keenetic-public-dns script

master
Maxim Likhachev 1 year ago
parent
commit
eee09868b7
  1. 3
      README.md
  2. 46
      scripts/keenetic-public-dns

3
README.md

@ -21,5 +21,6 @@ will create the symbolic link for each script in the `links_path` directory.
# Index # Index
- [local-dns](scripts/local-dns) enables Keenetic DNS for entire LAN. - [keenetic-public-dns](scripts/keenetic-public-dns) configures public DNS servers.
- [keenetic-local-dns](scripts/keenetic-local-dns) enables Keenetic DNS for entire LAN.

46
scripts/keenetic-public-dns

@ -0,0 +1,46 @@
#!/usr/bin/env expect
set timeout 2
set USER $env(KEENETIC_USER)
set PASS $env(KEENETIC_PASS)
set HOST $env(KEENETIC_HOST)
set KEENETIC_PROMPT "(config)> "
set DNS_SERVERS {
1.1.1.1
8.8.8.8
8.8.4.4
}
spawn ssh $USER@$HOST;
expect {
"Are you sure you want to continue connecting (yes/no*)?*" {
send "yes\r"
}
}
expect "password: "
send "$PASS\r"
foreach dns $DNS_SERVERS {
expect $KEENETIC_PROMPT
send "no ip name-server ${dns}\r"
expect $KEENETIC_PROMPT
send "ip name-server ${dns}\r"
}
expect $KEENETIC_PROMPT
send "show ip name-server\r"
expect $KEENETIC_PROMPT
send "system configuration save\r"
expect $KEENETIC_PROMPT
send "exit\r"
expect eof
Loading…
Cancel
Save