I would like to create a 100% private network of linked repeaters. We are in 2 different states and do not want them connected full time.They are NOT ham repeaters so they can not register with Allstar. They also will not have static IP. So I would like to setup my own registration server on my server to keep track of my nodes and there IP addresses. We are setting up Allstar on our ham repeaters here, but my private system for security reasons and to prevent them for accidentally transmitting on frequencies they are not allowed on will never be able to connect to the Allstar system.
I think it would be possible to configure an Asterisk server to be your private registration server. For just a few nodes it would only be configuration, no source code involved. Sounds like a fun project. Iâm sure youâd learn a lot about Asterisk and app_rpt in the attempt. Give it a try.
I talked to some of my knowledge buddies about this and they are willing to help you set this up. However, we as AllStarLink can not host this for you. Do you have some place where, preferably a VM hosting service to put your registration server?
Yes I have a NAS drive with VM capabilities along with Linux support. It also has a static IP with a domain name. Pretty much need the software that apt-rpt checks into to create the node list and send the node list out. I donât write code and am told old to start now. I appreciate the helpâŚ
Not sure thatâs the best place long term for your host. But you can try it and later move if it doesnât work out.
Hereâs a place for you to start. Install Debian on the box and then try installing AllStar with these instructions.
My NAS has been running none stop for 5 years and it host a Plex Server, web server, ftp, backups with security cameras on it along with many other things. Currently there is 24TB of drive space on it. It is very stable. Iâm also going to make a backup on a cloud server so if mine goes down. That said⌠The question is, is a Allstar installation required to have a registration server? I try not to install anything on the NAS that I wonât use. My Allstarâs are on Raspberry Piâs. It appears the registration server (even though it connects to) is not part of Asterisk or apt-rpt. Could you please tell me the complete setup. Hope this doesnât sound rude. I like to read through everything to complete a task before I start so I get a general idea of what is going on then I go through step by step so there is no surprises.
Stability is not the issue. You need a safe place where we can help you get this running. Another Pi running ASL, or even a small dedicated Intel box might be a better option. That way you donât have to loose your NAS services while we develop the registration server.
Yes, registration happens on an AllStar server. Iâve heard that HamVoIP is working on or has some other (non AllStar, non open-source) method of registration.
Installing Allstar on your NAS will be pretty much the same as what you did on your Pi. The instructions I gave you are all I have. We donât know how to build a registration server yet. We just thought we take your project on as an opportunity to learn.
This is going to be a learning effort for us as well as you. Itâs going to take some time complete this project and there will be surprises along the way.
I will have to take some time and set one up. I will do it on a small pc.
Thanks
I know this topic is over a year old now, but I myself am wanting to do the same thing, @wd6awp is it possible if you can tell me how I can setup a private registration server? What I am trying to do is I have a few people in my neighborhood wanting to connect âprivatelyâ instead of through a central hub where everybody hears everybody. I think I am headed in the right direction, I have a web server with a php script that whenever someone submits theyâre callsign, theyâre location, name, all that, through an html form, it will take that info and put it in the correct order in iax.conf to make peering info for people to be able to connect to my proxy server hosted on a pi at my house but the problem is, is on both ends you have to connect manually, so for example, I want to connect to my friends node 101, my node is 102, he has to do *3102 and I have to do *3101 in order to have audio. I basically want to make a local neighborhood allstar system over the internet, I know I could use microwave links or something but I donât have the money at the moment for those. Thank you!
It is easy:
Note: You will need a firm understanding of how to setup and configure Asterisk as a basic phone system to do this. The information for doing this is widely available and outside the scope of this post.
-Configure Asterisk to accept registrations in the iax.conf file. (or look up using realtime asterisk that stores this in a database. not worth it for just a handful of users that are pretty static. https://wiki.asterisk.org/wiki/display/AST/Realtime+Database+Configuration)
-Put the accounts for your friends and associates in the iax.conf file to register (or database if using realtime asterisk). Alternatively, you could forego the password based auth and use the public key (RSA) auth (astkeygen). Then distribute each user their own private key and keep the public portion on your reg server.
Distribute your own private nodelist as either an addendum to rpt.conf or put it into a file called rpt_extnodes in /var/lib/asterisk. Doesnât matter how old or you update this file, just donât let ASLâsreg system overwrite it.
Remember, you are essentially setting up an Asterisk PBX that has only IAX clients. . but uses an add-on program instead of just pure IAX for management.
For ASL, the reg server setup is a bit more complex due to the back end and the large number of nodes that it supports. The basics of it are this though.
Or just forego this and setup your own phone network with app_rpt services using DUNDI and some dialplan magic.
Good luck!
If you just have a handful of nodes and you donât mind non-automated (read manual and possibly painful) way to create you own private network, you can add the ip address (or hostnames) of all the nodes in the [host] stanza of rpt.conf on each of the nodes. You will still be able to connect to public nodes if you want to enable ASL registration.
If you have more than a few nodes the @kg7qin method is a more secure option and less painful to manage once itâs set up.
Interesting project, let us know how it goes.
Thank you guys for the wonderful input! I shouldâve also mentioned that another problem iâm having is dynamic ipâs. I want my users to be able to connect to a mobile network (using a hotspot or whatever) and be able to go mobile. So does the iax.conf register string fix that? Like when someone uses the register statement to register to my server, then will them having a dynamic ip not matter? If you havenât already figured out, I want an automated way to create a private network. Sorry if iâm not making sense, and again thanks for all of the input @wd6awp and @kg7qin
Given your requirements I suggest another approach. Have all you nodes register to Allstar and whitelist your nodes.
You can read about whitelist at https://wiki.allstarlink.org/wiki/Blacklist_or_whitelist
Always plenty of ways to achieve your objective in asterisk
A simple iax register, as peers is all that is needed. To stay away from dynamic ipâs use simple log-in method and allow any host. host = dynamic
Yes, less secure but how much do you need. Use long passwords and usernames.
Donât forget to create routing in your extensions for everyone.
You can do that from one vps website. Something has to be static ip or name served Then everyone can register iax as a peer. Each a different peer. The magic happens in your extensions routing.
Just thinking, âŚbut you have to do the work.
Hi Tim,
I know this is crazy being so long ago. A family emergency took me away from this and many other things. After which I couldnât get back to this project. I have recently revived it and have come a long way. I have a server up and running with the database active. Users are connecting and reporting via IAX (âiax show peersâ - reports the nodes, ip and ports). I am stumped on creating the nodes list from the data base. Any help on the script to read the database to create the list would be great. It is the last piece of the âpiâ so to speak.
Thanks
Tony
WRAW556
Here are some approaches you can take:
- Make a script that parses the output of this (look at how to use awk, cut, and sed):
asterisk -rx âiax2 show peersâ - Use Allmon2âs server.php output to show the connected peers. Parse this however you please. This is probably my preferred approach because the data is easily parseable.
Cheers,
Rob
Would anyone have the current location of this file for one to look over?
William