Live data from Hacker News

Building a Personal VoIP System

sacredheartsc.com

111–120 of 150 posts

Re: Building a Personal VoIP System

#111
post #107

> 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…

My 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.

Re: Building a Personal VoIP System

#112
post #7

Earlier quoted context omitted.

We 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.

Can you share some resources explaining how this could be set up?

TRIP/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

Re: Building a Personal VoIP System

#113
post #18

I'd rather stab myself with WebRTC clients & a signalling+TURN server instead of enduring Asterisk

Which 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). I don't use it much, but good enough for the rare times I have to use the phone.

Re: Building a Personal VoIP System

#114

It'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…

Today 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.

These 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.

Re: Building a Personal VoIP System

#115
post #107

> 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…

> 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.

Re: Building a Personal VoIP System

#116
post #67

Earlier quoted context omitted.

I 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.

Note 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 d…

There are two different reasons companies ask for your phone number, and it's worth distinguishing between them:

The first is for sending a verification code during signup to prevent spammy/abusive signups. In my experience, this is the least likely to work with VoIP numbers because companies often intentionally block VoIP numbers.

The second is for sending 2FA codes during login. My experience with this has been much better. AFAICT, companies do not intentionally block VoIP numbers for this use case. When SMS does fail, there is almost always an option to send the code by voice call, and this is always 100% reliable.

I also have some experience with using a modem with a SIM card to receive SMS. I've used two different models of modem (not Sierra Wireless) and both have been very flaky, often locking up and requiring a power cycle, or having hours-long delays when receiving SMS. I would not call this approach a panacea.

Re: Building a Personal VoIP System

#117
post #78

Earlier quoted context omitted.

Why would that be more reliable than TURN? If your router "forgets" about established streams half-way, your VPN will not stay connected either.

UDP 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.

If you don't have any evidence, guessing that routers/modems prioritize IP packets based on the next protocol sounds like a conspiracy theory.

Re: Building a Personal VoIP System

#118
post #43

Earlier quoted context omitted.

The 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_SI...

That'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.

The quality of VoIP software tends to leave a lot to be desired, in my experience.

None of the 4 VoIP providers I've worked with support IPv6 :-/

Re: Building a Personal VoIP System

#119
post #67

Earlier quoted context omitted.

I 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 y…

I 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.

Unfortunately, Twilio is no longer a viable option for sending SMS for personal use. If you want to send SMS you have to register a "campaign" and jump through a bunch of hoops that assume you're a company sending a large volume of application-generated messages (e.g. you must disclose samples of the types of messages you intend to send, and get explicit opt-in from recipients). Up until now, I've managed to avoid registering a campaign by instead paying a slightly higher per-message cost, but this is being phased out on July 5. I've been trying out https://jmp.chat (their founder is commenting elsewhere in this thread) and will likely port my number to them.

Re: Building a Personal VoIP System

#120

It'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…

Today 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.

The POTS lines were largely for goofing around, though I did use a FXO port to bring in the local POTS line. Mostly I used the FXS ports to interface a 1A2 KSU to Asterisk to run my old WE 2500 series key station.

90% of the traffic was handled over SIP or IAX to desk sets or ATAs.

Post reply on HN