server A and server B have asterisk 1.2.4. The external IP of server A is 1.2.3.4 . I try to establish a trunk from server A to server B (peer and register=> entry on server A, user entry on server B). On server B: [username] type=user host=dynamic secret=asreadonpastebindotcom bandwidth=low context=from-gadot asterisk 1.2.4 on both ends. The register entry on server A is: register => username:asreadonpastebindotcom@hostname.of.server.A.com Both A and B are behind different NATs of some sort. A has a full IP address reverse-NATed. B has only the IAX port forwarded. I refer to the external address. authentication packets do reach the server. The output from iax debug for the time of a registration on server A is: Rx-Frame Retry[ No] -- OSeqno: 000 ISeqno: 000 Type: IAX Subclass: REGREQ Timestamp: 00003ms SCall: 00004 DCall: 00000 [1.2.3.4:4569] USERNAME : username REFRESH : 60 Mar 22 10:03:13 NOTICE[16534]: chan_iax2.c:5044 register_verify: No registration for peer 'username' (from 1.2.3.4) Tx-Frame Retry[000] -- OSeqno: 000 ISeqno: 001 Type: IAX Subclass: REGREJ Timestamp: 00015ms SCall: 00003 DCall: 00004 [1.2.3.4:4569] CAUSE : Registration Refused CAUSE CODE : 29 With the following I fail to register. changing to type=friend I manage to register. What am I missing?