Goals
The SR140 fax server will be deployed behind a NAT device, e.g. in AWS EC2. The media server will have a private IP address. SIP and RTP traffic will traverse the local NAT device.
Background and strategic fit
SR140 requires an SBC when running in AWS because the AWS environment does not perform NAT Traversal capabilities for SIP as a default. This adds to the cost of the solution and is not desirable.
Solution: Allow the setting of an IP address that will be used to modify the SIP headers, such as From and Contact, as well as the SDP headers defining the RTP connection information to the external IP of the EC2 instance.
The SR140 needs to be aware of the NAT device's public IP address. This public IP address will be used in place of the private IP address. This setting can be a single value for the whole system assigned when SR140 starts (in configuration file).
Assumptions
Requirements
# | Title | User Story | Importance | Notes |
---|---|---|---|---|
1 |
User interaction and design
Here are the fields that the SBC changed before they built it into the product: There could be others that I am missing.
On a SIP message with a SIP Request:
From IP Address
Contact IP address
Via IP address (first one in the list if multiple)
In the SDP:
IP address in the “C” lines
IP address in the :”o”
Any P-Asserted-Identity address field
Any Record-route address field
In a 18x message
Contact IP address
In a 200 message
Contact IP address
In 4xx message
Contact IP address
For question number 2 below "Who will obtain the public IP address?":
If the SR140 is required to figure out what the public IP address is, we need a keyword in the
callctrl.cfg file which would tell the SR140 to use the public IP address that it obtains.
If the customer obtains the public IP address, then we need a keyword in the callctrl.cfg file
which would tell the SR140 the public IP address it should use.
Questions
Below is a list of questions to be addressed as a result of this requirements document:
Question | Outcome |
---|---|
| |
2. Who will obtaining the public IP address? Is it the responsibility of 3. If there is a new keyword for the public IP address in the callctrl.cfg file, will this keyword take 4. What about the Request URI and the To: header fields? Will these use the public IP address? I actually think that these should use the IP address of the remote side which is receiving the fax. 5. Support for both IPv4 and IPv6 or just IPv4? 6. What about the port for the public IP address? https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-instance-addressing.html |
Add Comment