Hello, Are you ips (LAN_IP and WAN_IP) on sepparate interfaces?
I use add_path for Register requests. It insert header Path: <sip:10.130.0.23:5070;lr> My pbx calls to User-Agent throught 10.130.0.23:5070. INVITE(from kamailio) go out to internet from 10.130.0.23:5070 This line "$fs = «udp:10.130.0.23:5060»;" don`t work, It produces an error: (pv [pv_branch.c:62]: pv_get_branchx_helper(): error accessing branch [0]) ср, 29 июн. 2022 г. в 18:55, ZZ Wave <[email protected]>: > I use this with NATed Kamailio and Asterisk for "transparent" > registrations: > > if (is_method("REGISTER")) { > add_path(); > } > if ($Ri=="LAN_IP") { > $fs="udp:WAN_IP:5060"; > } else { > $fs="udp:LAN_IP:5060"; > } > > AFAIK FreeSwitch supports Path as well but Yate doesn't > > ср, 29 июн. 2022 г. в 12:25, Алексей Якимкин <[email protected]>: > >> Hello, >> >> I have kamailio in local network behind NAT. Kamailio have one interface >> eth1 with ip 10.130.0.23 >> >> UserAgent - (internet) - (178.0.0.169)router_with_NAT - (LAN) - >> kamailio+rtpproxy - pbx >> >> I made two listeners: >> listen=udp:10.130.0.23:5070 #to pbx in lan (I don`t want to put via >> header with 178.0.0.169) >> listen=udp:10.130.0.23:5060 advertise 178.0.0.169:5060 #to internet >> (UserAgent need to get via header with 178.0.0.169 ) >> >> >> mhomed = 1 # I think It not useful for my case >> >> UserAgent send Register and Invite to 178.0.0.169:5060, Kamailio get it >> on udp:10.130.0.23:5060 >> >> Kamailio Relay it to udp:10.130.0.23:5070 >> >> My pbx get requests from udp:10.130.0.23:5070 with via header >> 10.130.0.23 >> >> Responses to UserAgent go from udp:10.130.0.23:5060 with via 178.0.0.169 >> >> >> In RELAY block: >> if ($Ru == «udp:10.130.0.23:5070») { >> #set_send_socket(«udp:10.130.0.23:5060»); >> $fs = «udp:10.130.0.23:5060»; >> #force_send_socket(«udp:10.130.0.23:5060»); >> } else { >> #set_send_socket(«udp:10.130.0.23:5070»); >> $fs = «udp:10.130.0.23:5070»; >> } >> #$fs = «udp:10.130.0.23:5070»; >> if (!t_relay()) { >> sl_reply_error(); >> } >> >> route[REGISTRAR] { >> >> if ($rd == "mydomain.ru" || $rd == "mydomain2.ru") { >> >> set_send_socket("udp:10.130.0.23:5070"); >> >> } >> >> } >> >> >> It works for requests from UserAgent to PBX. But INVITE from my pbx to >> UserAgent goes only through udp:10.130.0.23:5070 , Kamailio realy it to >> internet from udp:10.130.0.23:5070 >> >> I get error in syslog: (pv [pv_branch.c:62]: pv_get_branchx_helper(): >> error accessing branch [0]) >> >> I tried set_send_socket(«udp:10.130.0.23:5070»); and $fs = >> «udp:10.130.0.23:5070»; >> >> Why I can`t relay outgoing requests to internet through another socket? >> >> >> -- >> >> Best regards, >> Alex >> >> __________________________________________________________ >> Kamailio - Users Mailing List - Non Commercial Discussions >> * [email protected] >> Important: keep the mailing list in the recipients, do not reply only to >> the sender! >> Edit mailing list options or unsubscribe: >> * https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users >> > __________________________________________________________ > Kamailio - Users Mailing List - Non Commercial Discussions > * [email protected] > Important: keep the mailing list in the recipients, do not reply only to > the sender! > Edit mailing list options or unsubscribe: > * https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users > -- С уважением, Якимкин Алексей
__________________________________________________________ Kamailio - Users Mailing List - Non Commercial Discussions * [email protected] Important: keep the mailing list in the recipients, do not reply only to the sender! Edit mailing list options or unsubscribe: * https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
