Hello guys, I try published 2 KiwiSDR receiver with using one real IP and using same port (8073) with Raspberry Pi3 and Nginx.
My topology:
On first step I created 2 different domain name in DNS, on my example it's kiwi.mydomain.com and kiwi2.mydomain.com (A or CNAME) with my real IP address 142.93.129.90
Second step, - on KiwiSDR1 configure SDR.hu registration to "Yes" and on connection add Next Kiwi URL redirect to
http://kiwi2.mydomain.com:8073, on KiwiSDR2 configure SDR.hu registration to "No"
Next step, - install and configure Nginx on Raspberry Pi3:
- sudo apt update && sudo apt -y upgrade
- sudo apt install -y nginx
change Nginx config file (my example):
- sudo nano /etc/nginx/sites-available/default
upstream kiwi1 {
server 192.168.1.3:8073;
server 192.168.1.4:8073 backup;
}
upstream kiwi2 {
server 192.168.1.4:8073;
server 192.168.1.3:8073 backup;
}
server {
listen 8073;
server_name kiwi.mydomain.com;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header realip $remote_addr;
location / {
proxy_pass http://kiwi1;
}
}
server {
listen 8073;
server_name kiwi2.mydomain.com;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header realip $remote_addr;
location / {
proxy_pass http://kiwi2;
}
}I use second KiwiSDR for backup main in upstreams for best site stability.
Test configure: sudo nginx -t and if it's correct restart Nginx: sudo /etc/init.d/nginx restart, if you don't want close established connections you can use sudo /etc/init.d/nginx reload
Final step, - published Raspberry Pi3 on router like one of the KiwiSDR and start for testing connection.
The End
Troubles:
KiwiSDR see real IP of connected clients but don't use time limits for it:
Maybe any ideas how fix it?
PS you can start gzip compression on Nginx for low bandwidth connection.
PSS off course you can use more than 2 KiwiSDR with simple correction of this config.