13 ms·
Building a Personal VoIP System
- francescovv 3y agoExcellent article, and sections "NAT Problems" and "NAT Solutions" are a good starter on that topic. Except even third-choice solution is not always feasible. Reserving fixed RTP/UDP port range is not possible with carrier-grade NAT, which is quite common with residential ISPs and nearly-universal with cell ISPs. Fourth-choice would be to reserve port range on a personal server (which would run B2BUA, asterisk in OP's case; or an RTP proxy), and force calls, including media, from/to SIP handsets to go via that.
- astrobe_ 3y agoOne often sees the STUN, TURN or ICE protocols around SIP-based VoIP, I believed they were supposed to help solve those issues?
- deno 3y agoYes, Asterisk can poke holes in NAT on its own just fine. I was surprised how pessimistic the article is on this. I have systems running for months and years behind NAT with no issue. You might have to disable direct media (endpoint/disable_direct_media_on_nat). Also, this is just uptime related tip not NAT, you must explicitly set registration/max_retries to a huge number otherwise Asterisk just gives up permanently at some point. It’s a really weird default.
- singpolyma3 3y agoAre you doing calls to/from other sip URIs that are also behind NAT, or just using your trunk and internal extensions?
- deno 3y agoTrunk and internal, and I usually put all the phones in their own VLAN w/o direct Internet access. I don’t really see a use for dialing arbitrary SIP URIs. If I need to add a remote phone I’ll just connect it directly with a network tunnel.
- numpad0 3y agoThey don't always work... The idea is if you send UDP packets to destination so arranged by middleman(STUN) or to a proxy so arranged by middleman(TURN) as an outgoing traffic, your Wi-Fi should be smart enough to set up a temporary NAT entry to allow responses to reach your $LOCAL_IP:$PORT. In reality, the Wi-Fi may have short memory or may be dying behind a refrigerator covered in dust and not able to handle all necessary combinations and ranges of addresses and ports, resulting in various partial failures such as one-way audio or missing participant in a group call. Fifth-choice option is to just encapsulate everything into a VPN, preferably L2 VPN over HTTPS to a server on a global IP. If it isn't working, there must be no Internet.
- remram 3y agoWhy would that be more reliable than TURN? If your router "forgets" about established streams half-way, your VPN will not stay connected either.
- astrobe_ 3y agoUDP is unreliable transport by specification, so I guess that if a network equipment such as a router cannot cope with the general workload, it would probably sacrifice UDP first without a second thought.
- remram 3y agoIf you don't have any evidence, guessing that routers/modems prioritize IP packets based on the next protocol sounds like a conspiracy theory.
- astrobe_ 3y agoHuh? It's an obvious thing to do. If you have to drop a packet because your queues are full, any engineer with an IQ over 50 will pick the victim from the UDP packets, because the sender expects it might happen, and also because it won't necessary cause a retransmission - e.g. an RTP packet.
- jeroenhd 3y agoAll of the NAT problems would instantly to away with IPv6, but with adoption still at a meager 50% I suppose you'll need a PBX of some kind to receive at least half the calls. For those stuck behind CGNAT, there are guides online for how to set up a VPN to a cheap VPS and forward all network traffic to your network so you can have almost-real connectivity at home. If you're content with 50mbps, you can even use Oracle's Always Free tier.
- fulafel 3y agoWould be interesting to hear why they use v4+nat and face the described problem. First thought was maybe they bought some very old phones without v6 support - but the models he recommends don't seem to have this problem based on a googled datasheet.
- stonewall 3y ago(Author here.) Sadly its a lot less interesting: my home ISP still doesn't support IPv6.
- jeroenhd 3y agoFor what it's worth, and if you're willing to tinker, you can get IPv6 for free through a tunnel as long as your router responds to ICMP: https://tunnelbroker.net/ https://tunnelbroker.net/ You can get a bunch of /64s and a /48 for free because HE really wants everyone to have IPv6 available already. Picking the right internet exchange to route from and making Netflix not throw a fit requires some minor experimentation but I've found it to work quite well. As an added bonus, because of the way IPv6 route advertisements work, you don't have to have a router with tunneling support. You can set up advertisements from any Raspberry Pi or other computer as long as it has outbound connectivity.
- agwa 3y agoThe SIP provider would also need to support IPv6 for this to do any good. voip.ms does not: https://wiki.voip.ms/article/FAQ#Do_you_Support_IPV6_with_SIP_and_or_IAX2.3F https://wiki.voip.ms/article/FAQ#Do_you_Support_IPV6_with_SI...
- jeroenhd 3y agoThat's rather silly. Getting IPv6 connectivity is usually the difficult part, and servers are the easiest things to get IPv6 for. I wonder what part of their tech stack is still incompatible after all these years.
- rcarmo 3y agoThis was sort of a thing in the mid-2000s, and I’m actually surprised to see it again. At the time I expected home routers to become SIP endpoints (and that came to pass with fiber), but they all expose FXO interfaces (jacks) rather than act as proxies for soft phones, so there’s a missed opportunity there. But the truth of the matter is that just shipping a DECT phone in a bundle is much easier for the carrier to troubleshoot.
- forgotusername6 3y agoWe could have easily been calling eachother by our email (SIP URIs) addresses. It is a shame that instead we got a dozen walled gardens when it comes to making voice/video calls over the internet.
- rsolva 3y agoCan you share some resources explaining how this could be set up?
- brazzledazzle 3y agoOne way was SIP and SRV DNS records. Seemed like it had some of the problems email has except it’s a phone ringing instead of spam.
- gormandizer 3y agoTRIP/ITAD is/was a framework that I believe was designed to facilitate this. Unfortunately it never took off. https://www.rfc-editor.org/rfc/rfc2871 https://www.rfc-editor.org/rfc/rfc2871
- wnolens 3y agoCool to read someone indulge in this. For others interested with no prior context, also consider FreeSWITCH. Personal experience: I spent about 15 months working for a local telecom company, supporting their asterisk servers and developing interactive voice response applications. I was given the opportunity to build their residential voip service (in 2010?) from scratch and despite asterisk being so dominant I prototyped and eventually completed the project using freeSWITCH. I found it to be so much more developer friendly to configure and extend. Being able to build dial plans and implement logic with JavaScript or Lua rather than asterisk's config files was worth it. I suspect this system is still running.
- jelly 3y agoI took a look at freeSWITCH's site and it looks like they got bought out. Their documentation is a total mess because the acquiring company has imported lots of wiki pages without much care for how they fit together.
- psim1 3y agoTheir wiki has always been a bit of a mess. The company Signalwire is largely the same crew as the original FreeSWITCH team.
- danogentili 3y agoAsterisk dialplans can also be written in Lua, thanks to the Lua extension!
- singpolyma3 3y agoYes, this is what I do. The documentation is sometimes a trick to map over, but it's so nice to use a real language for everything else.
- dmpanch 3y agoAsterisk from 12th version supports Asterisk REST Interface, no longer need to write configs.
- gamedna 3y agoHaving gone down this road many times with freepbx, asterisk, etc.. I ultimately settled on just using voip.ms and connecting phones/sip clients directly to their internal sub-accounts with voicemail. They have enough features for most users so you don't need to worry about running your own PBX.
- ivr-eric 3y agoSame here. 3 businesses, only 1 problem in 10 years. The only thing I have to add: if you need to make telephone calls, the call quality using a SIP phone is much better than using a softphone.
- lillecarl 3y agoThis isn't necessarily true, a computer can speak SIP too, with a good headset it's just as good.
- zerox7felf 3y agoYeah, I would second this. In SIP a UA is a UA. So long as your softphone is good and your microphone is as well, there shouldn't be any difference. Although I would suspect the general experience may be that people with softphones more often will have terrible microphones for their PC...
- stavros 3y agoI disagree. Yes, in theory, an agent is an agent, but in practice I have never in my life at any point seen computer hardware that comes anywhere close to the usability of a Polycom device.
- jonpurdy 3y agoI have been using voip.ms since 2015 for my phone service. Multiple numbers (DIDs) pointing to an IVR where callers must press 1 to connect to me (totally avoids robocalls). Plus voicemail (transcribed and emailed to me). One issue with voip on mobile (iOS in my case) is that I would often miss calls due to late push notifications and timing out. So recently I set up a calling queue that rings/pushes my phone a few times instead of just once (queue timeout to 30 seconds before hitting voicemail). Basically, if you want the control FreeSwitch and Asterisk offer but don't want to self-host, voip.ms is the best way to go.
- KaiserPro 3y agomy wife had a requirement: be able to have an intercom for the house and shed. We used to have a baby monitor, but that was one way, for one room. Now we need many more rooms to talk to each other. I looked at some intercoms on amazon/ebay, they are all RF and a bit shit. I saw some wifi ones, but nothing cheap enough to take a punt on. I did think about trying to make something with an ESP32, but that would be too hard for me in the time. So I bought 6 cisco 7962 sip phones for £35 in total, and installed freepbx. It took a bit of effort to bring the tftp server online, and make sure all the dhcp info was being passed on correctly. Once that was complete, freepbx makes most things pretty simple. Now, I have ethernet is most rooms, and a switch that can do PoE, so this solution is for a niche of a niche
- nicolaslem 3y agoI remember playing with an old device as a child at my grandparents' place, it was similar to a walkie-talkie but transmitting using the mains power instead of RF. It was supposed to plugged to a socket and hanged on the wall. It was made exactly for the use case you describe, as an intercom between rooms. It even had a button to ring a bell in another room.
- hiatus 3y agoThese still exist, you can buy them on Amazon. [1] I figured these had to exist as I recently saw a device to make a lan using mains circuits. [1]: https://a.co/d/31rKR02 https://a.co/d/31rKR02
- numpad0 3y agoI actually run 7962g + FreePBX too, using sccp_manager and phone-integrated SSL-VPN. It took more hair pulling and shady patching than the SIP route, but now I can make intercom calls over the Internet! That way I don't need a direct L1/L2 link between "offices". Solves NAT problems too, because it's all in-band signaling and media transport over single TCP connection.
- NoZebra120vClip 3y agoI hope you ran optical between the house and the shed. The difference in ground potential among buildings can cause a lot of trouble for copper/electrical connections.
- pabs3 3y agoDoes anyone have SIP setup on their domain? Are there many spam calls these days?
- deno 3y agoOther way around, there are bots testing if they can use your systems for placing spam calls.
- linker3000 3y agoYep, if I set 'Allow Incoming SIP Messages from SIP Proxy Only' to 'no' (allows direct SIP-SIP calls) on my home VoIP service, I'll get a silent call from '500' about every minute or so.
- Taniwha 3y agoI've written about it elsewhere in this thread but I've found that a simple vopice menu that has a message (that might sound like a voicemail to a spammer's dial computer) and that requires people dialing in to press one key stops 99% of spammers
- singpolyma3 3y agoI run a public SIP server, and it gets constantly attacked just like any other public service. Mostly trying to use it to call expensive routes hoping it's unsecured though, not trying to spam local extensions.
- sydney6 3y agoHas someone good experience with a VoIP-Provider (not OVH or Sipgate) in Europe?
- MattJ100 3y agoI'm eagerly awaiting jmp.chat to branch out into Europe (they have plans, but no concrete timeline). I'm curious why not sipgate, which I currently use, or Twilio which I half-use (it mostly forwarded to my own Asterisk server, which needs some attention).
- progx 3y agoUse fonial since 2 years without any problem. It has a good configuration options with a simple backend interface.
- linker3000 3y agoDo you have any specific issues with Sipgate? I only have a couple of numbers with them and don't use them much but am curious what their reputation is like.
- sydney6 3y agoI can't say anything about sipgate's reputation, as i haven't used their service. It just has been an issue with limited service availability in my country (BE)..
- gingerlime 3y agoI just saw that they might discontinue their starter plan[0] as they focus on business. I can understand that residential voip is pretty much dead. [0] https://help.sipgate.de/hc/de/articles/4407798852113-sipgate-starter https://help.sipgate.de/hc/de/articles/4407798852113-sipgate...
- zajio1am 3y agoI have very good experience with Odorik ( https://www.odorik.cz/?jazyk=en https://www.odorik.cz/?jazyk=en ).
- 3y ago
- TacticalCoder 3y agoAh good memories! Even though I knew nothing about VoIP I installed, years ago, one at my wife's little SME using "RasPBX" (a distro made of Raspbian + FreePBX + Asterisk) running on a... Raspberry Pi 1 (maybe a Pi 2 but I'm pretty sure it was a 1). The Pi was booting from the SD card but everything was running on an external HDD. I did put six Cisco VoIP phones and all was working fine as long as no more than four phones were used simultaneously (which never happened). It worked for years like that and wife ended up selling her SME with these VoIP phones still hooked to the RPi 1. We warned them that that thing was kinda a hack ; ) For anyone hesitating: it's not hard to set up. Find a provider to get a SIP trunk, configure the thing, backup the config (I just imaged the entire drive), and you're good to go for a very long time. It's simple, reliable, stuff that usually won't move under your feet.
- jamesmstone 3y agoI have a tangentially related problem I have been battling with that you may be able to help me with. I'm moving overseas (Australia to Denmark) and would like to keep my current mobile phone number working for calls and SMS , but use it from afar. I would be able to leave a raspberry pi at a friend's house. Can you use this setup without a SIP provider? Would you need to buy a modem for the raspberry pi?what would you do?
- sokoloff 3y agoI've never done it, but look into chan_mobile and a bluetooth dongle to connect a mobile (with your SIM) to asterisk running on a Pi at your friend's place.
- sgc 3y agoI would just port my number to twilio and use/write a really basic twilio mobile app. It's a bit risky to rely on a slightly cobbled hardware/software setup that is sitting across the world with no physical access.
- mindslight 3y agoNote that one problem with voip providers is the numbers/lines often won't be recognized as valid by snake oil 2FA and the like. So porting to a voip provider only works if your goal is receiving SMS/calls from actual humans or just parking the number for later. But if you're doing it to avoid having to change your number for every service that has an SMS nagwall, it likely won't work. You can get a modem that will do SMS (eg a Sierra Wireless card), but I don't know if/how they do voice. Also, I'd shy away from the RPi based on the unreliability of SD cards. It would/will be pretty annoying for your host to go down and you have to travel back to fix it. I suppose if your friend is halfway handy you could keep an image of the machine as installed. Or even take new images remotely (rsync from the raw device a few times in a row?). If the root filesytem goes wonky, have your friend pull the SD card and reimage it.
- villgax 3y agoI'd rather stab myself with WebRTC clients & a signalling+TURN server instead of enduring Asterisk
- mgbmtl 3y agoWhich clients do you use? And how do you connect to a SIP trunk / DID without Asterisk? I use WebRTC with Asterisk, and Browser Phone for the client (https://github.com/InnovateAsterisk/Browser-Phone https://github.com/InnovateAsterisk/Browser-Phone). I don't use it much, but good enough for the rare times I have to use the phone.
- irusensei 3y agoI’ve used to live in an inter generational big house (Italians am I right… even if we are not actually born there we still have spaghetti dna). Anyway I’ve setup one very lightweight asterix instance of statically defined accounts. A few cheap voip phones were installed through the house plus soft phones on personal smartphones. It was supposed to make things more convenient. Supposed to, because we just kept yelling to convey messages. When I’ve moved out I’ve dismantled the system since I wouldn’t be there to keep it maintained.
- Taniwha 3y agoI put in an asterix system 20 years ago, it still runs great, all I've done has been to replace a couple of dying (RAIDed) drives. I live in NZ used to live in the Bay Area, NZ trunks come in from a local SIP provider and use an Ooma box for our old US phone number, in home we had 5 FXSs and a sip phone in my office - everyone had a phone in their bedroom, and a couple on public spaces. It's set up so that all incoming calls hit a voice prompt saying which 1-digit extension you should enter to get who (this stops 99% of phone spam) - everyone gets a voicemail on their extension which rings in their bedroom and rolls over to the common spaces - and everyone gets a unique ring cadence, my daughter who at one point got 80% of the phone calls got the 2 short rings. The kids have gone, we've moved to a smaller house, only 2 extensions, but that same hardware soldiers on (and still stops 99% of the spam - I've had 1 call in the past year)
- z3t4 3y agoVoIP used to be standard on phones, even mobile smartphones. So I setup Asterisk so that family members could call each others as long as they where on WIfi. Unfortunately VoIP is no longer a built in standard so you need to download an app to use it. Before you could just dail 1 and my phone would ring, dail 2 and you would reach my wife.
- hashstring 3y ago> Use a SIP Application Layer Gateway. This is a horrible feature offered by some routers. Basically, it deep-packet-inspects your SIP traffic, rewrites the headers, and creates port forwards on-the-fly to make sure the inbound audio stream makes its way to your device. SIP ALGs are a total hack and notoriously buggy. Yes, these hacky ALG features also allowed internet users to access internal IPs on arbitrary services (!); named “remote arbitrary firewall pinhole control”. The attack was published in 2020 and named NAT slipstreaming [1]. [1] https://samy.pl/slipstream/ https://samy.pl/slipstream/
- jasonjayr 3y agoThis was on by default on a consumer router that was used at a small office. Their VoIP phones would get phantom calls until I discovered this and disabled it.
- hashstring 3y agoWoah, good find. How did you actually find out that this was happening? Network captures? When was this approximately? I’m wondering how widespread this (still) is.
- jasonjayr 3y agoIt would have been 2-3 years ago. I was getting reports of phones ringing, but no audio, no calls record from the VoIP server CDR (which all phones were configured to proxy through) and when looking @ the system logs from the phones, they were reporting nonsensical IP addresses, which pointed to something at the edge of the network.
- jeroenhd 3y agoI'm pretty sure you've solved a mystery I was confused by years ago, back when I was doing tech support. It wouldn't have mattered much because the router/modem combos in use didn't have a switch for SIP ALG anyway, bit it's good router finally know what could've caused the phantom phone ringing.
- supertrope 3y agoYou can install Acrobits Groundwire or Bria. Those support PUSH notification for incoming calls. Push is better than missing calls because the app got killed, or forcing the app to run 24/7 and severely shortening battery runtime. But the call quality will never be as good as the native phone app as that gets QCI prioritization.
- lormayna 3y agoOne of my first job, in 201, was to create a spam faxing machine based on Asterisk. Once the initial setup was completed (T38 is a bit tricky to tune), it was very effective, it sent more than one milion of faxes every year.
- forgotmypw17 3y agoThank you for sharing your experience. How do you feel about it?
- lormayna 3y agoI am not the only sharing his experience with Asterisk in this thread. Why this criticism?
- forgotmypw17 3y agoI commented because you reminded me of a similar experience I had.
- sylware 3y agoThere is SIP and XMPP, but they may be overconvoluted for what I am trying to achieve. Namely, I am not aiming at internet universality (no IPv4 sharing abomination built into the protocols). I am looking at a modular set of protocols built mainly for IPv6. The base: the "telephone number" would be ipv6:port. "Ringing" and video/audio streams setup would be done here. End to end encrytion right from the start (only manual key exchange, zero automatic, even before ringing). On top, a "comfort protocol"(one level of indirection) for those changing ipv6, but not "accutely roaming", namely changing ipv6 while in a video/audio call: a "DynDNS" but simpler, more a "current IPv6:port of 'name' kind of thing", "address book with a drop of dynamic", "name@server" and you get the current ipv6:port. Unfortunately, it means "accounts" and real time updates. Of course, "server" could be a local/dns/ipv6. I am thinking zero password, only a public key. For video/audio streams, I may not bother and go TCP. The main constraint would be the timing information shared among video/audio streams. No "internet weather" dynamic reconfiguration. I even consider going "horribly horrible" for internet: idiotic binary based instead of text based protocols.
- zokier 3y agoPeople still actually make phone calls? I mean its neat that you can run your own voip, but I struggle to imagine it getting used much or being worth even $5/month
- ocdtrekkie 3y agoI want to set something like this up myself, probably less for external calling than as an in-home intercom. Public dialing might be handy just so it can easily include cell phones.
- forgotmypw17 3y agoYes, there are many people for whom voice phone is the preferred method of contact, and I accommodate them because they're important to me.
- hermannj314 3y agoPeople still read newspapers, ride horses, plant crops by hand, and dress up for renaissance faires.
- rjsw 3y agoI'm just about to ask for my landline to be disconnected, no sense in paying for something I hardly ever use, won't bother porting the number to VoIP. Will either just keep the copper pair for VDSL or switch to FTTP. The only person that I did call using the landline is my father, but his VoIP system is unreliable.
- PopAlongKid 3y agoWhen I'm conversing with family or friends by phone using my VoIP, and the connection starts getting bad, I always volunteer that the problem is not on my end, since my connection is wired.
- agwa 3y agoNice article. Is there a benefit to using a queue for incoming calls instead of just dialing multiple extensions with the & operator?
- deno 3y agoYou get some statistics for queues but also for example you might want to only take one call at a time even if you can answer from multiple. Also Asterisk queues make it very easy to do things like 'there’s N callers waiting' etc.
- kamma4434 3y agoA queue shines when it can distribute incoming calls based on it knowing agent availability. (Shameless plug: the company I work for does cloud reporting [1] for Asterisk and FreeSwitch queues - that is then whitelabelled and sold by a lot of big name telcos worldwide. Not sexy but effective!) [1] https://www.queuemetrics.com https://www.queuemetrics.com
- xnyanta 3y agoThe solution to the NAT issues is simply to use IPv6 and not worry about NAT.
- systems_glitch 3y agoYeah, it's amazing how many SIP providers don't support IPv6 still :/ Total solution, no more headaches.
- deno 3y agoPhones need to stay up and at this point in time NAT is more reliable than IPv6, which is probably not even an option most of the time anyway.
- mnd999 3y agoYes, that’s what I do. Andrews and Arnold offer SIP over ipv6 in the UK (and probably further afield).
- tempaccount1234 3y agoAny recomendable sip Clients for iPhones to Connect to such a system?
- supertrope 3y agoAcrobits Groundwire. Counterpath’s Bria Mobile. These use push notifications for incoming calls. That way there’s no missed calls because the operating system killed the app or battery drain caused by keeping the app running.
- systems_glitch 3y agoIt's worth noting that Asterisk will run on very low-end hardware: for the last 7 or so years, I've been running a small Asterisk box on a VIA C3 Mini-ITX system. System idle power is around 10W. The only reason I chose the VIA C3 system over something newer was that a) I already had it and b) it had a PCI slot (specifically PCI, not PCIe). The PCI slot let me plug in a Digium TDM800P and add eight POTS lines, either FSX or FXO, for pretty cheap.
- WesolyKubeczek 3y agoToday you could have the same average power consumption with an Odroid H3, and probably juggle more quality codecs too. (Well, sans the Digium card; but it’s just mindboggling how far we went with power consumption these days.) I’m wondering how necessary POTS lines actually are these days (and how many connect to VoIP on the telco side). Should depend on the country.
- tomatocracy 3y agoThe H3 has an M.2 slot and a separate emmc slot. So if you really wanted to use that card perhaps you could use an M.2 to PCIe connector and then connect that in turn to a PCIe to PCI adapter/riser. Power might be an issue though.
- extinctpotato 3y agoThese days POTS lines are usually only used for last mile communications so the calls get converted to VoIP on the telco side. Basically it's for backwards compatibility — the phone lines are already there, a lot of people have phone wiring in their houses and no configuration is required on the consumer's end. In general the days of having direct electrical connections between two distant telephones are long gone. The telco companies scrapped it when they realized that they could trunk the phone calls from a local branch to the central office using PCM streams over a single cable.
- systems_glitch 3y agoMetallic path between two stations that weren't terminated in the same CO has been dead for a long time! I suspect nowadays you're unlikely to have metallic path outside the frame you land on, if that, unless you're paying for dry pairs.
- psim1 3y agoI am one of the few people from my generation to maintain a "land line" (VoIP) and I, too, run it with Asterisk and the FreePBX configuration GUI. FreePBX provides a ton of macros out-of-the-box so that adding unwanted callers to a blacklist or doing phone number lookups is simple, for example. Why bother? Well, I find it interesting and fun, but most of the stuff I like can also be done with Google Voice. So I don't recommend self-hosting a phone system unless you are really into the idea and want to spend a decent amount of time learning telecom domain knowledge.
- rglullis 3y agoSo, maybe one of the VoIP experts that showed up on this thread can help me with one doubt... Let's say that I have a LDAP server where I manage user accounts, and I want people to be able to call each other with any SIP-enabled phone. I am not interested in voicemail/IVRs/any type of "voice application" on top of that. Do I really need Asterisk/FreeSWITCH or can I just go buy by setting up something like Kamailio?
- codeslinger 3y agoKamailio is what is called a Session Border Controller. Its primary purpose is to provide protection and some lightweight filtering for the media servers/PBXs behind it. Once you want "advanced" features like voicemail, parking, hunt groups, three-way calling, etc, you will need to use a PBX like FreeSWITCH (recommended) or Asterisk (not) behind it anyway. If you're only running a single machine, an SBC isn't really worth the trouble.
- rglullis 3y ago> Once you want "advanced" features like voicemail, parking, hunt groups, three-way calling. Right, but what I am saying is that I don't want any of those features. At least not yet. I just want to give my customers a sip address (username@communick.com) where they can call other SIP addresses. In that case, is that a PBX still needed?
- jjrh 3y agoYou certainly can use Kamailio but it will be much easier/faster to get something going in Asterisk. You don't need to run any of the advanced features in Asterisk (and can completely unload the modules if you want).
- password4321 3y agoAny technology recommendations or examples for integrating VoIP with open source chat platforms like Jitsi, Mumble, etc.?
- singpolyma3 3y agoJitsi has something built in, I havent used it but I expect it's similar to big blue button which I have done, it runs a freepbx so setting up some extra dialplan rules to get interconnect is possible.
- ttul 3y agoIf only there was an equivalent for building your own home GSM/LTE network. When around the house, I would love to connect to my own private cellular network. Not only is coverage poor where I live, but this would allow me to route calls in sophisticated and useful ways, because the backplane of modern cellular networks is VoIP.
- singpolyma3 3y agoI expect you would need a spectrum license for that :)
- michael_michael 3y agoI've built my own business VoIP system — a few times over. I've used Asterisk and FreePBX (the free-ish GUI built on Asterisk), but settled on Asterisk for stability. At one point FreePBX pushed out an update that took down my system for a couple of days and baffled me until I read the FreePBX forums and saw similar complaints from other users. If you want a week-ish long project, go for the full mid-2000s, boingboing and slashdot experience: buy the dead tree version of the O'Reilly Asterisk book, which has been kept up to date and is still an wonderful resource. Follow it until you have the Enterprise-grade phone system of your dreams. I even hired Allison "The Voice of Asterisk" [0] to do our phone tree voice prompts. Her prices were very reasonable for a small batch of prompts, and it’s surreal hearing the same lady that does the IVR for your bank and cable company do your own voice prompts. I use Twilio for my SIP trunking, and it has nice fallback features in case the Asterisk system needs to go down for maintenance or the like. Costs about $20/month for a dozen or so users and fairly frequent calls/SMS. [0]: https://www.theivrvoice.com/ https://www.theivrvoice.com/
- orev 3y agoGreat explanation of the SIP protocol. I’ve been looking for something that explains it this clearly forever, and this gets right to the point with the high level concept instead of getting immediately bogged down in technical specs.
- derefr 3y ago> SIP was initially released in 1999, and was designed with the assumption that each device has its own globally routable public IP address. After all, the IPv6 standard was released back in 1995, and NAT would soon be a thing of the past…right? Unforunately, this did not end up being the case. AFAIK, most residential and commercial ISPs these days do assign customers both a dynamically-DHCP-leased IPv4 address, and a static, globally-routable IPv6 prefix — usually a /64, though some are nicer than that. If you put your ISP's gateway router into bridge mode, and then plugged your computer directly into it — then your device would acquire both an IPv4 and an IPv6 address. But routers — including ISP gateway routers — insist on doing NAT not only for IPv4, but also for IPv6 (using the fe80:: prefix.) So on any regular home or office network, devices are going to acquire private-use IPv4 and IPv6 addresses. Is there some reason that modern routers don't do NAT for IPv4, while just further splitting+assigning the received prefix for IPv6, such that every device on the network receives a private IPv4 addr, but a public IPv6 prefix, e.g. a /72? I know that Internet-backbone network switches ignore the last 64 bits of IPv6 in their routing tables; but those bits are still being carried in the IPv6 packets, and once they reach your home router, it can make use of them to route to the final destination (i.e. one of the devices behind it.) Wasn't this supposed to be the idea?
- t0mas88 3y agoMy quite basic free router from my ISP does exactly that. It plugs into the UTP port on the fiber termination box (no idea how to call that) and handles DHCP for ipv4, while allowing ipv6 auto configuration using a /64 for all devices behind. Seems to work out of the box for both Windows and Apple devices. Only thing is that it automatically firewalls all incoming connections on both v4 and v6, but I think that's a very good default for an ISP device for home use. Especially since everyone is so used to v4 being NATed.
- mgbmtl 3y ago> But routers — including ISP gateway routers — insist on doing NAT not only for IPv4, but also for IPv6 (using the fe80:: prefix.) So on any regular home or office network, devices are going to acquire private-use IPv4 and IPv6 addresses. Maybe I'm misunderstanding your comment, but fe80:: is a link-local address and used by devices to talk to each other on the network. It's there by default when IPv6 is enabled. Most ISPs that support IPv6 will provide a /56 to the router, and then the router will assign a /64 to wifi. Then the clients get an IPv6 address using DHCPv6 or a route announcement. Unfortunately most VoIP providers do not support IPv6. voip.ms, which I use, for example, does not. In my Asterisk pjsip configuration, I use: external_media_address = dyn.example.org external_signaling_address = dyn.example.org where dyn.example.org is a dyndns that I use that points to my home Asterisk server, on a dynamic IPv4 address. My ISP does change my IPv4 address rather often, and sometimes I have to restart asterisk for the change to be effective.
- cyberax 3y agoI have a VoIP system at home as well. I first used an RPi with Asterisk, but later switched to a Yeastar box with FXS ports (to connect a couple of Old School wired phones). One thing that is making me REALLY MAD is that there are NO IPV6 TRUNK PROVIDERS in the US. Not a single one. At least none where I can just enter my credit card and get a phone line. Somehow, the protocol designed to restore the end-to-end connectivity is not used for the poster child of end-to-end connectivity.
- aftbit 3y agoI have been tinkering with a personal VoIP system in my spare time over the last couple of months. At this point, I have rescued the 3 lines of house wiring in my 1970s house and connected them to Asterisk on a VM via a Cisco MC3810 and a Adit 600 channel bank. This has involved messing with T1s which was a childhood dream of mine. I have 12 phones connected to the system, using my house wiring, a few point-to-point wires, and some SIP VoIP phones over ethernet. In turn these connect to Phreaknet, C*NET, and of course the normal PSTN via a pair of different ITSPs. I now feel almost qualified to build an early 2000s business voice phone system, for what very little that is worth. More importantly, I have a rotary phone on my desk. ;)