필드의 IP에서 SIP 트래픽을 허용하는 방법은 라우터 IP에 의해 수정됩니다.

필드의 IP에서 SIP 트래픽을 허용하는 방법은 라우터 IP에 의해 수정됩니다.

다음과 같은 문제가 있습니다.

PC1    - eth0: 192.168.188.55
         eth1: part of br0: 10.147.20.69
         tap1: part of b0: 10.147.20.2 -> connected to PC2
on eth1: i have a trunc sip device GOIP and some times PC3.

서버는 Freepbx 기반으로 Centos7이 설치되어 있습니다.

PC2에서 ping pc1: 확인 ping eth1: 확인 PC3에서 ping pc1: 확인 sip 클라이언트 등록: 확인

PC3 대신 GOIP를 사용할 때 sip 클라이언트 또는 trunc에서 등록에 실패했습니다. 이렇게 하면 tcpdump -i eth0 src 10.147.20.2Freepbx가 SIP 옵션 패킷을 보내고 있지만 보낸 사람 필드 IP가 대신 교체된 것을 볼 수 있습니다.

~에서[이메일 보호됨]누구에게 누구로부터[이메일 보호됨]

eth0의 라우터는 무엇입니까?

다음과 같은 Iptabels 규칙이 있습니다.

-t nat -A POSTROUTING -o eth1 -j MASQUERADE
-A FORWARD -o eth1 -j ACCEPT

-t nat -A PREROUTING -i ztyqbvbk6k -p tcp --dport 8060  -j DNAT --to 10.147.20.17:80
-A FORWARD -i ztyqbvbk6k -p tcp --dport 80 -d 10.147.20.17 -j ACCEPT


-t nat -A POSTROUTING -o eth0 -j MASQUERADE
-A FORWARD -i eth0 -o zt+ -m state --state RELATED,ESTABLISHED -j ACCEPT
-A FORWARD -i zt+ -o eth0 -j ACCEPT

그러나 IP 192.168.188.88을 얻기 위해 GOIP를 라우터에 직접 연결하면 Freepbx가 여기에 등록할 수 있습니다.

이 시나리오에서는 conntrack이 필요합니까? 활성화하거나 확인하는 방법은 무엇입니까? Iptables에 문제가 있나요? 어떤 제안이 있나요?

여기 내 라우팅 테이블이 있습니다

[root@pbx ~]# route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         192.168.188.1   0.0.0.0         UG    100    0        0 eth0
10.0.0.0        0.0.0.0         255.0.0.0       U     0      0        0 eth1
10.147.20.0     0.0.0.0         255.255.255.0   U     0      0        0 br0
10.147.20.0     0.0.0.0         255.255.254.0   U     0      0        0 tap1
192.168.188.0   0.0.0.0         255.255.255.0   U     100    0        0 eth0

업데이트 1:

ip route get 10.147.20.2 from 10.147.20.69
network is unreachable

PC3을 eth1에 연결하고 10.147.20.2에 핑을 쳤을 때는 괜찮았습니다. 어떤 제안이라도 감사하겠습니다. 감사합니다!

관련 정보