00:09.18 | *** join/#asterisk sinaowolabi (~Sina@102.134.114.1) |
01:55.22 | *** join/#asterisk AndyCap (~aoy@pdpc/supporter/sustaining/AndyCap) |
01:58.35 | *** join/#asterisk tsal (~tsal@i59F527C4.versanet.de) |
01:59.40 | *** join/#asterisk mr44er1 (~mr44er@dynamic-046-114-000-072.46.114.pool.telefonica.de) |
02:07.48 | *** join/#asterisk CatCow97 (~mine9@c-73-96-109-206.hsd1.or.comcast.net) |
02:33.55 | *** join/#asterisk setham (~textual@unaffiliated/setham) |
02:58.55 | *** join/#asterisk forgotmynick (uid24625@gateway/web/irccloud.com/x-mhqfmrddwpecmhtj) |
03:03.19 | *** join/#asterisk ldm (~ldm@hacksoc/member) |
05:00.16 | *** join/#asterisk Ner0Zer0 (~Ner0Zer0@87.253.63.54) |
06:18.41 | *** join/#asterisk bmg505 (~leon@8ta-146-129-02.telkomadsl.co.za) |
06:31.23 | *** join/#asterisk sa02irc (~mbax@155-079-043-212.ip-addr.inexio.net) |
06:35.46 | *** join/#asterisk sinaowolabi (~Sina@102.134.114.1) |
07:30.55 | *** join/#asterisk sinaowolabi (~Sina@105.112.69.124) |
07:33.15 | *** join/#asterisk JAunis (~jean@lputeaux-658-1-51-39.w92-154.abo.wanadoo.fr) |
08:13.57 | *** join/#asterisk lankanmon (~LKNnet@cpeb4fbe4e331bd-cm9050cadd5190.cpe.net.cable.rogers.com) |
08:22.55 | *** part/#asterisk JAunis (~jean@lputeaux-658-1-51-39.w92-154.abo.wanadoo.fr) |
09:24.42 | *** join/#asterisk netman (~netman@185.94.249.19) |
09:27.00 | *** join/#asterisk sinaowolabi (~Sina@102.134.114.1) |
09:51.08 | *** join/#asterisk sinaowolabi (~Sina@105.112.69.124) |
09:53.05 | *** join/#asterisk opal (~wowaname@volatile/founder/wowaname) |
10:30.10 | *** join/#asterisk itt788 (~itt788@117.246.150.255) |
10:31.53 | itt788 | what should be the value of "udpbindaddr" instead of 0.0.0.0 when the goal is to use only one network interface? |
10:32.29 | orn | itt788: the ip address of the network interface that you want to use |
10:33.12 | itt788 | 192.168.1.0? or 192.168.1.0/24? for the case the network address is 192.168.1.1 for example |
10:34.00 | itt788 | orn: so 192.168.1.1? |
10:34.48 | itt788 | you responded fast, i was still writing when your message appeared |
10:35.19 | orn | itt788: yeah, 192.168.1.1 if that's the ip on the interface you want to bind on |
10:35.37 | orn | 0.0.0.0 is just a wildcard mask, meaning listen on all available interfaces |
10:37.00 | itt788 | isn't there anything we could use so that i do not need to update sip.conf if i ever change my lan ip address? |
10:38.06 | itt788 | the names like eth0, wlan0 can't be used for this purpose? |
10:38.31 | orn | itt788: i don't believe there is, short of writing a post-up script for your networking that will automatically update sip.conf for you |
10:38.40 | orn | itt788: will the address be changing often? |
10:39.15 | orn | itt788: you could just listen on all intefaces, i guess, and use a firewall to make sure that only the LAN is allowed to communicate |
10:39.34 | itt788 | not really, it depends on the internet box. |
10:40.23 | itt788 | orn: firewall? you mean iptables? |
10:41.17 | orn | itt788: for example, yes |
10:41.25 | itt788 | if the modem/router is reset i should be given another address that the usual one |
10:41.57 | orn | itt788: you could use a static address or use a static dhcp delegation to make sure you always keep it on your own LAN |
10:42.36 | itt788 | you mean by touching the settings in the router? |
10:42.52 | orn | itt788: exactly |
10:46.05 | *** join/#asterisk opal (~wowaname@volatile/founder/wowaname) |
10:47.30 | itt788 | why not, but i'd prefer an iptable rule |
10:48.38 | itt788 | i think 5000-5100 is the range for sip ports, isn't it? |
10:49.53 | *** join/#asterisk sinaowolabi (~Sina@102.134.114.1) |
10:50.16 | orn | it's configurable in rtp.conf |
10:50.32 | orn | if you're using chan_sip |
10:50.57 | orn | rtpstart= and rtpend= |
10:51.39 | itt788 | i see |
10:57.46 | electronic_eel | itt788: just make sure the ip address is already there before you start asterisk, otherwise it will not start properly |
10:58.22 | electronic_eel | the usual way to do that is by using the after option in systemd |
10:59.20 | electronic_eel | with 0.0.0.0 it doesn't matter, it will work with any ip, even if it is configured after asterisk is already running |
11:56.07 | *** join/#asterisk CatCow97 (~mine9@c-73-96-109-206.hsd1.or.comcast.net) |
11:57.03 | *** join/#asterisk itt788 (~itt788@117.246.182.255) |
12:01.46 | *** join/#asterisk gschanuel (~gschanuel@200-181-252-244.user3p.brasiltelecom.net.br) |
12:08.21 | *** join/#asterisk lbazan (~LoKoMurdo@fedora/LoKoMurdoK) |
13:10.24 | *** join/#asterisk ghoti_ (~paul@dsl-rb-64-118-19-141.wtccommunications.ca) |
13:15.53 | *** join/#asterisk rpifan (~rpifan@p200300d2672b5d00e2384f598a714674.dip0.t-ipconnect.de) |
13:23.18 | *** join/#asterisk gtjoseph (~gtjoseph@asterisk/developer/gtjoseph) |
13:23.18 | *** mode/#asterisk [+o gtjoseph] by tolkien.freenode.net |
13:25.14 | *** join/#asterisk gtjoseph (~gtjoseph@asterisk/developer/gtjoseph) |
13:25.15 | *** mode/#asterisk [+o gtjoseph] by ChanServ |
13:33.12 | itt788 | i set the udpbindaddr to the address of my network interface but still when i check "sip show peer" the ip address given to one of the peers is of another network interface |
13:34.19 | file | Asterisk doesn't give IP addresses to peers, depending on configuration we either take it as they've told us, or we use the actual IP address and port the SIP REGISTER came from |
13:35.20 | *** join/#asterisk rpifan_ (~rpifan@p4fca2729.dip0.t-ipconnect.de) |
13:41.10 | itt788 | file: yes this sounds correct but the setting parameter "host=" which could be "dynamic" sounds like it gives an ip address. |
13:41.41 | file | it doesn't give an IP address, it means that the remote side sends a SIP REGISTER to tell us how to reach it |
13:41.45 | file | instead of being statically configured |
13:43.44 | *** join/#asterisk Enitin (enitin@gateway/vpn/privateinternetaccess/enitin) |
13:43.48 | *** join/#asterisk sinaowolabi (~Sina@105.112.69.124) |
13:44.22 | itt788 | i see |
13:46.40 | itt788 | still i don't see why in the CLI it shows a wrong ip address for one of the peers. I set up only two peers, the other one has "(Unspecified)" |
13:48.11 | file | (Unspecified) means they haven't contacted Asterisk and told it how to reach them |
13:49.17 | *** join/#asterisk catphish (~charlie@unaffiliated/catphish) |
13:49.37 | file | unless NAT options are enabled, then we take what the phone says - as a SIP REGISTER means "if you need to send me something I can be reached at this IP address and this port" |
13:49.45 | file | so if that's wrong, then it is the phone deciding to put that in |
13:50.00 | catphish | how does one set the IP address for pjsip rtp media? |
13:50.30 | catphish | oh, perhaps external_media_address is what i want |
13:50.39 | catphish | although it's not "external", it's local |
13:50.48 | file | by default the routing table will decide, otherwise there are options in pjsip.conf to set a media address and also to have it be bound to, if behind NAT then the external_media_address and local_net options are used to substitute the IP address in the SDP |
13:51.21 | catphish | i'm not behind a NAT, but i am not using the IP from the routing table for my asterisk, i'm using a VRRP address |
13:51.48 | catphish | so i kinda want to set the *local* media address if that's possible |
13:52.06 | catphish | oh, i'm being blind, there's media_address= |
13:52.08 | catphish | thanks |
13:59.44 | catphish | sadly that doesn't seem to work, it advertises the correct address, but doesn't send from it |
14:02.46 | catphish | fixed. bind_rtp_to_media_address=yes combined with media_address= |
14:08.45 | *** join/#asterisk sibiria (~sibiria@unaffiliated/sibiria) |
14:13.39 | igcewieling | Generally, if you have to use media addresses when not using nat, you have a really badly designed routing table. |
14:18.42 | *** join/#asterisk andrewyager (~andrewyag@syd02s26-fw01.thecore.net.au) |
14:18.51 | *** join/#asterisk sinaowolabi (~Sina@102.134.114.1) |
14:28.54 | itt788 | i use ekiga, does anyone knows where other than ~/.config/gconf/apps/ekiga are there user specific files storing network configuration, account details and contacts? |
14:31.43 | *** join/#asterisk kharwell (uid358942@gateway/web/irccloud.com/x-hwjobuhxegvwaeql) |
14:31.44 | *** mode/#asterisk [+o kharwell] by ChanServ |
14:32.22 | itt788 | i removed ~/.config/gconf/apps/ekiga irectory but nothing changed |
14:33.03 | *** join/#asterisk bford (uid283514@gateway/web/irccloud.com/x-khvydodtyupiilgr) |
14:33.03 | *** mode/#asterisk [+o bford] by ChanServ |
14:33.46 | *** join/#asterisk Ravenheart (~Ravenhear@95-43-79-254.ip.btc-net.bg) |
14:35.06 | *** join/#asterisk rpifan_ (~rpifan@p200300d2670B950013552A7Fe188c654.dip0.t-ipconnect.de) |
14:36.06 | catphish | igcewieling: why so? my host has 2 IP addresses, the first is in the routing table, the second is a virtual IP used for the voice application |
14:36.36 | igcewieling | catphish: is the virtual IP on the same network as the main IP? |
14:36.48 | catphish | igcewieling: yes |
14:36.55 | igcewieling | if so, that is the example. |
14:37.44 | igcewieling | When you use virtual IPs the routing table doesn't matter as much and you have to jump through hoops to get ANY application to use the correct IP. |
14:38.23 | igcewieling | BTW, what exactly is "the voice application"? |
14:38.24 | catphish | right, it needs applications to bind to the correct address |
14:38.48 | catphish | igcewieling: just the thing i've built on asterisk/pjsip |
14:38.51 | igcewieling | In any case, if you were not using virtual IPs, chances are it would have worked immediatly. |
14:39.06 | igcewieling | catphish: why not use the main IPs? |
14:39.32 | catphish | yes, of course, the problem was purely that PJSIP was not binding to a specific IP, and hence sending RTP traffic from the server's primary IP |
14:40.23 | catphish | the main IPs won't work, because user phones behind firewalls/NAT send RTP to the VRRP address, and expect traffic back from the same address |
14:40.50 | catphish | this is basically because of symmetric RTP being needed for phones behind NATs |
14:40.54 | igcewieling | Ah, you are also using your PBX as a router? |
14:41.07 | catphish | as a router? i don't think so |
14:41.28 | igcewieling | VRRP means it acts like a router, right, using a floating IP of some kind? |
14:42.48 | catphish | it's a floating IP, nothing to do with being a router (though that was what VRRP was originally designed for i think) |
14:43.04 | igcewieling | I do all that sort of stuff at the network level with routers and GRE tunnels. |
14:43.19 | catphish | so i have 2 hosts, both running asterisk, an IP that can float between the two for failover, nothing more complex than that |
14:43.46 | catphish | so the SIP service runs on the floating IP, and asterisk needs to bind to that IP for everything SIP/RTP related |
14:44.00 | igcewieling | Ah, you are using that method. |
14:44.13 | catphish | this now appears to work find with the config i mentioned above |
14:44.14 | igcewieling | That sort of makes sense as to why you had so many problems. |
14:44.24 | catphish | well i only had one problem :) |
14:44.44 | catphish | (so far) |
14:44.52 | igcewieling | your are not expecting calls to magically migrate to the failover server when the main one fails? |
14:45.20 | catphish | why would i expect that? i have nothing in place to replicate call state |
14:45.29 | igcewieling | How are you handling configuration sync between the servers? |
14:45.46 | catphish | PJSIP realtime + mariadb async replication |
14:45.54 | catphish | that part appears to work very well |
14:46.16 | igcewieling | catphish: Many people just setup a failover server and point the phones to that as the failover server IP. That avoids all that complication. |
14:46.43 | catphish | registrations are replicated in maria, so calls can immediately be re-established |
14:47.24 | orn | another option would be to use a sip proxy for redirection to the currently active pbx, which might be less error prone to manage |
14:47.47 | Samot | By immediately re-established you mean a new call can be made? |
14:47.50 | orn | vrrp is as good method as any i guess though |
14:48.12 | igcewieling | catphish: how many phones on the PBX? |
14:48.25 | catphish | Samot: yes indeed |
14:49.38 | catphish | orn: having used both, i find proxies (even a simple redirecting one) introduce more complexity than VRRP |
14:49.58 | catphish | but the right solution is whatever works for the situation of course |
14:50.37 | catphish | igcewieling: only about 1,000 on this system at the moment |
14:50.43 | Samot | Yes but if something happens to my proxy in Chicago I can use my proxy in Dallas. |
14:51.01 | *** join/#asterisk lambda (~xiretza@2a01:4f8:c010:8b24::1) |
14:51.39 | igcewieling | catphish: I agree with you about proxies. |
14:51.40 | orn | catphish: absolutely, whatever you find best to work with and works reliably |
14:51.58 | Samot | I guess that depends on the VRRP setup. |
14:52.11 | orn | catphish: we sometimes use BGP anycast for the same purpose as VRRP. Slower, but can work with a lot of equipment |
14:52.14 | catphish | Samot: you're right, though strictly one doesn't need a proxy for that, just a god routing protocol |
14:52.16 | Samot | And if geo-redundancy is a thing being used. |
14:52.46 | Samot | catphish: Yes, but if I was to do that with two Asterisk servers I would need cross connects between my DCs. |
14:52.53 | catphish | i am using VRRP between 2 sites with a simple ethernet network that physically spans the two over a few miles |
14:53.17 | catphish | Samot: right, i happen to have 2 data centres with dark fibre between them for this |
14:53.44 | Samot | A few miles apart? |
14:53.49 | catphish | yes |
14:54.00 | Samot | Mine are a few states apart. |
14:54.09 | catphish | that makes it trickier :) |
14:54.14 | Samot | Not with the proxies. |
14:54.26 | catphish | anycast proxies would work well then |
14:54.41 | Samot | I don't need anycast. I have SRV |
14:54.47 | catphish | that works too :) |
14:55.16 | catphish | though maybe you don't even need proxies in that case (for the failover) |
14:55.37 | Samot | I do quite a lot on my proxies. |
14:56.06 | catphish | yeah, it makes a lot of sense, i used to have a pretty complex kamilio setup |
14:56.22 | catphish | but for this deployment, 2 asterisks is a lot simpler and does what i need |
14:56.23 | Samot | Asterisk does not handle registration services, in my case. |
14:57.46 | orn | Samot: I'm curious -- how do you handle those? On kamailio? |
14:57.51 | Samot | Yes. |
14:58.00 | catphish | since looking at the new pjsip realtime, i've found asterisk is a lot more capable in that regard |
14:58.18 | catphish | previously i used kamailio primarily because i couldn't do good database backed registrations in asterisk |
14:58.26 | Samot | Yeah but I also can tear apart the SIP packet. |
14:58.33 | orn | Samot: Interesting. Do you have a high-level overview of how you are running things? It's always interesting to see other people's Asterisk deployments |
14:58.35 | Samot | Validate things |
14:58.50 | Samot | Proxies handle all interaction between the network and the users. |
14:59.07 | *** join/#asterisk lambda (~xiretza@irc.xiretza.xyz) |
14:59.19 | Samot | Proxies figure out if they can call long distance, offshore, International, it does the rate checks for users that use that |
14:59.31 | igcewieling | If I'd started with Kamailio originally, I'd never have started with Asterisk. Any time I look at Kamailio I realize I'll have to rebuild my entire Asterisk dialplan into Kamailio. No thanks. |
14:59.42 | Samot | It checks if stuff is in a blocklist not just for the user but for the company itself too |
14:59.55 | *** join/#asterisk lambda (~xiretza@irc.xiretza.xyz) |
14:59.57 | Samot | You don't have to rebuild dialplan into Kamailio. |
15:00.05 | Samot | I'm not sure where you're getting that. |
15:00.33 | igcewieling | Samot: Just passing packets though doesn't provide any value to me at all. |
15:00.42 | Samot | I don't just pass packets through. |
15:00.46 | Samot | It does auth. |
15:00.56 | Samot | It validates the request |
15:01.27 | igcewieling | and then passes the packet to Asterisk |
15:01.41 | Samot | Sure. |
15:01.49 | *** join/#asterisk slima (~slima@unaffiliated/slima) |
15:01.51 | Samot | If it is supposed to. |
15:02.28 | igcewieling | I use IP auth, so registrations are not involved. I suppose another application to validate the incoming request would be nice. |
15:03.02 | igcewieling | But I will have to send all calls to asterisk do basically do everything, but not since the IP is hidden from Asterisk, I don't even have IP auth. |
15:03.41 | slima | Hi, I need a hint, there is something like: foo = [ 'one', 'to', 'three' ] GoToIf ${CALLERID(num)} is _in_ $foo ? |
15:04.32 | orn | slima: you could use a while loop |
15:04.35 | Samot | Well my other advantage, my Asterisk IPs are hidden from public. |
15:04.47 | slima | now i have GotoIf($[$["${CALLERID(num)}" = "one"] | $["${CALLERID(num)}" = "to"] [...] |
15:05.03 | Samot | slima: There are no arrays in Asterisk like other languages. |
15:05.34 | Samot | foo=['one','two','three'] is a string and one that will cause problems |
15:06.02 | igcewieling | something like ExecIf($[${REGEX("bob|tim|mary" ${MYVAR})}]?Hangup(16)) |
15:06.24 | Samot | Yeah, that would work better. |
15:07.13 | orn | slima: you could also use a combination of the While and Cut dialplan applications to run through a list you have stored in a variable, using some sort of a separator, but igcewieling's solution is much cleaner |
15:08.13 | Samot | I would just watch using comma (,) as a delimiter in your vars. |
15:08.43 | Samot | Because if you pass that to certain apps or functions, it could take it as *options* for that app or function call. |
15:11.48 | orn | slima: you could also use asterisk database variables to maintain some sort of list... or registration state... or whatever. perhaps it would be better if you described what you're trying to achieve instead of getting implementation hints |
15:15.16 | slima | I have some list of ${CALLERID(num)} who can call to exten, numbers not on that list, will be transfered |
15:15.34 | Samot | What is doing the transfer? |
15:15.54 | orn | slima: all righty -- when i've done such things in the past, i've generally just used the asterisk database which i find easy to maintain |
15:16.13 | igcewieling | I use an AGI for that sort of thing |
15:16.25 | igcewieling | (I use the same AGI for a lot of other things too) |
15:16.50 | orn | igcewieling: +1 on AGI, for things a little more involved than simple lists. but in this case, that might make sense if you find it nice to just maintain some array of allowed caller ids |
15:17.24 | slima | transfer is not good word for that, they will go to another exten. |
15:17.33 | Samot | K. |
15:18.42 | slima | but, igcewieling solution with REGEX is good enough I think. |
15:18.52 | orn | slima: GotoIf(${DB(allowed_cids/${CALLERID(num})}?Allowed:NotAllowed) |
15:18.56 | orn | would be an asterisk database solution |
15:19.16 | *** join/#asterisk eXistenZ (~pectic@bzq-109-67-246-66.red.bezeqint.net) |
15:19.34 | slima | $DB solution is good too. |
15:19.57 | orn | regex is nice if there's a very short list |
15:20.13 | slima | yeah, 3-5 items |
15:20.21 | orn | oh yeah, then that's prob. the way to go |
15:20.54 | slima | thanks you guys for help. |
15:21.13 | *** join/#asterisk lambda (~xiretza@irc.xiretza.xyz) |
15:23.19 | *** join/#asterisk cation21 (cation21@gateway/vpn/protonvpn/cation21) |
15:30.14 | *** join/#asterisk drathir87 (~drathir@gateway/tor-sasl/drathir) |
15:31.54 | igcewieling | "Asterisk is like sex, there is usually several ways to accomplish your goals" |
15:33.45 | *** join/#asterisk cresl1n (uid299068@asterisk/libpri-and-libss7-expert/Cresl1n) |
15:33.45 | *** mode/#asterisk [+o cresl1n] by ChanServ |
15:35.29 | slima | +1 |
15:45.14 | rpifan | lol |
15:51.14 | Samot | And just like sex, the other side can reject your attempts because you're not doing it right. |
16:47.12 | *** join/#asterisk smkelly (~smkelly@mykonos.smkelly.org) |
17:16.22 | *** join/#asterisk Iamnacho (~Iamnacho@ip68-102-131-177.ks.ok.cox.net) |
18:21.10 | *** join/#asterisk sinaowolabi (~Sina@105.112.69.124) |
18:41.03 | *** join/#asterisk BakaKuna (~Thunderbi@2a02-a446-ae46-1-896e-b291-5920-dfe5.fixed6.kpn.net) |
18:46.08 | *** join/#asterisk rpifan (~rpifan@p200300d2670b950062fe23644d77c875.dip0.t-ipconnect.de) |
19:27.22 | *** join/#asterisk ttys000 (~ttys000@50.92.213.208) |
20:02.53 | *** join/#asterisk Jesterboxboy (~Thunderbi@84-115-150-8.cable.dynamic.surfer.at) |
20:44.26 | *** join/#asterisk andrewya_ (~andrewyag@syd02s26-fw01.thecore.net.au) |
20:50.17 | *** join/#asterisk sinaowolabi (~Sina@102.134.114.1) |
21:21.53 | *** join/#asterisk adeel (~adeel@fw1.ridgeway.scc-zip.net) |
21:36.05 | *** join/#asterisk grummund (~unknown@unaffiliated/grummund) |
22:11.11 | *** join/#asterisk Typhon (~Typhon@dslb-088-066-100-050.088.066.pools.vodafone-ip.de) |
22:56.05 | *** join/#asterisk sinaowolabi (~Sina@105.112.69.124) |
23:08.03 | *** join/#asterisk andrewyager (~andrewyag@8-104-141-114.static-dsl.realworld.net.au) |
23:20.52 | *** join/#asterisk zapata (~zapata@2a02:1748:fad4:7260:4110:d376:6191:873f) |
23:26.35 | *** join/#asterisk andrewyager (~andrewyag@syd02s26-fw01.thecore.net.au) |
23:30.31 | *** join/#asterisk infernix (nix@unaffiliated/infernix) |