<p>osmith has uploaded this change for <strong>review</strong>.</p><p><a href="https://gerrit.osmocom.org/c/osmo-dev/+/26668">View Change</a></p><pre style="font-family: monospace,monospace; white-space: pre-wrap;">net: add osmo-bsc-nat<br><br>Make STP_CN_IP and STP_RAN_IP configurable. If they are not set to the<br>same IP, run a second OsmoSTP and OsmoBSCNAT to connect both OsmoSTP.<br><br>Related: OS#2545<br>Change-Id: I8bfbd00bfeeebc6e1b87a8cd6333212db4380653<br>---<br>M net/config_2g3g<br>A net/templates/osmo-bsc-nat.cfg<br>M net/templates/osmo-bsc.cfg<br>M net/templates/osmo-msc.cfg<br>A net/templates/osmo-stp-cn.cfg<br>R net/templates/osmo-stp-ran.cfg<br>M net/templates/run.sh<br>7 files changed, 92 insertions(+), 5 deletions(-)<br><br></pre><pre style="font-family: monospace,monospace; white-space: pre-wrap;">git pull ssh://gerrit.osmocom.org:29418/osmo-dev refs/changes/68/26668/1</pre><pre style="font-family: monospace,monospace; white-space: pre-wrap;"><span>diff --git a/net/config_2g3g b/net/config_2g3g</span><br><span>index 263629f..c1498be 100644</span><br><span>--- a/net/config_2g3g</span><br><span>+++ b/net/config_2g3g</span><br><span>@@ -109,6 +109,18 @@</span><br><span> SIPCON_SIP="${TO_SIP_IP}"</span><br><span> SIPCON_SIP_PORT="5060"</span><br><span> </span><br><span style="color: hsl(120, 100%, 40%);">+STP_CN_IP="127.0.0.1"</span><br><span style="color: hsl(120, 100%, 40%);">+STP_RAN_IP="127.0.0.1"</span><br><span style="color: hsl(120, 100%, 40%);">+# Set STP_CN_IP different from STP_RAN_IP, to run a second OsmoSTP and</span><br><span style="color: hsl(120, 100%, 40%);">+# OsmoBSCNAT to connect both</span><br><span style="color: hsl(120, 100%, 40%);">+# STP_RAN_IP="127.0.0.2"</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+# Enabled only when STP_CN_IP != STP_RAN_IP</span><br><span style="color: hsl(120, 100%, 40%);">+BSCNAT_CN_PC="${BSC_PC}"</span><br><span style="color: hsl(120, 100%, 40%);">+BSCNAT_CN_IP="127.0.0.3"</span><br><span style="color: hsl(120, 100%, 40%);">+BSCNAT_RAN_PC="${MSC_PC}"</span><br><span style="color: hsl(120, 100%, 40%);">+BSCNAT_RAN_IP="127.0.0.4"</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span> # PBX_SERVER:</span><br><span> #  "kamailio" -- launch kamailio</span><br><span> #  "freeswitch" -- launch freeswitch</span><br><span>diff --git a/net/templates/osmo-bsc-nat.cfg b/net/templates/osmo-bsc-nat.cfg</span><br><span>new file mode 100644</span><br><span>index 0000000..c9a71da</span><br><span>--- /dev/null</span><br><span>+++ b/net/templates/osmo-bsc-nat.cfg</span><br><span>@@ -0,0 +1,21 @@</span><br><span style="color: hsl(120, 100%, 40%);">+${include(common_template_warning)}</span><br><span style="color: hsl(120, 100%, 40%);">+cs7 instance 0</span><br><span style="color: hsl(120, 100%, 40%);">+ point-code ${BSCNAT_CN_PC}</span><br><span style="color: hsl(120, 100%, 40%);">+ asp asp-clnt-OsmoBSCNAT-CN 2905 0 m3ua</span><br><span style="color: hsl(120, 100%, 40%);">+  remote-ip ${STP_CN_IP}</span><br><span style="color: hsl(120, 100%, 40%);">+  local-ip ${BSCNAT_CN_IP}</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+cs7 instance 1</span><br><span style="color: hsl(120, 100%, 40%);">+ point-code ${BSCNAT_RAN_PC}</span><br><span style="color: hsl(120, 100%, 40%);">+ asp asp-clnt-OsmoBSCNAT-RAN 2905 0 m3ua</span><br><span style="color: hsl(120, 100%, 40%);">+  remote-ip ${STP_RAN_IP}</span><br><span style="color: hsl(120, 100%, 40%);">+  local-ip ${BSCNAT_RAN_IP}</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+bsc-nat</span><br><span style="color: hsl(120, 100%, 40%);">+ cs7-instance-cn 0</span><br><span style="color: hsl(120, 100%, 40%);">+ cs7-instance-ran 1</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+${foreach(LOG_OUTPUT)}</span><br><span style="color: hsl(120, 100%, 40%);">+log ${LOG_OUTPUTn_TYPE}</span><br><span style="color: hsl(120, 100%, 40%);">+${include(common_logging)}</span><br><span style="color: hsl(120, 100%, 40%);">+${foreach_end}</span><br><span>diff --git a/net/templates/osmo-bsc.cfg b/net/templates/osmo-bsc.cfg</span><br><span>index ab10a81..98f4e0c 100644</span><br><span>--- a/net/templates/osmo-bsc.cfg</span><br><span>+++ b/net/templates/osmo-bsc.cfg</span><br><span>@@ -19,7 +19,8 @@</span><br><span>  ipa bind ${BSC_IP}</span><br><span> cs7 instance 0</span><br><span>  point-code ${BSC_PC}</span><br><span style="color: hsl(0, 100%, 40%);">- asp asp-clnt-msc-0 2905 0 m3ua</span><br><span style="color: hsl(120, 100%, 40%);">+ asp asp-clnt-bsc-0 2905 0 m3ua</span><br><span style="color: hsl(120, 100%, 40%);">+  remote-ip ${STP_RAN_IP}</span><br><span> network</span><br><span>  network country code ${MCC}</span><br><span>  mobile network code ${MNC}</span><br><span>diff --git a/net/templates/osmo-msc.cfg b/net/templates/osmo-msc.cfg</span><br><span>index 00bf182..c018c78 100644</span><br><span>--- a/net/templates/osmo-msc.cfg</span><br><span>+++ b/net/templates/osmo-msc.cfg</span><br><span>@@ -1,4 +1,8 @@</span><br><span> ${include(common_template_warning)}</span><br><span style="color: hsl(120, 100%, 40%);">+cs7 instance 0</span><br><span style="color: hsl(120, 100%, 40%);">+ point-code ${MSC_PC}</span><br><span style="color: hsl(120, 100%, 40%);">+ asp asp-clnt-msc-0 2905 0 m3ua</span><br><span style="color: hsl(120, 100%, 40%);">+  remote-ip ${STP_CN_IP}</span><br><span> network</span><br><span>  network country code ${MCC}</span><br><span>  mobile network code ${MNC}</span><br><span>diff --git a/net/templates/osmo-stp-cn.cfg b/net/templates/osmo-stp-cn.cfg</span><br><span>new file mode 100644</span><br><span>index 0000000..c84168c</span><br><span>--- /dev/null</span><br><span>+++ b/net/templates/osmo-stp-cn.cfg</span><br><span>@@ -0,0 +1,24 @@</span><br><span style="color: hsl(120, 100%, 40%);">+${include(common_template_warning)}</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+# By default, osmo-dev starts one osmo-stp with this config. If STP_CN_IP and</span><br><span style="color: hsl(120, 100%, 40%);">+# STP_RAN_IP are changed to be different, osmo-dev starts two osmo-stp, one</span><br><span style="color: hsl(120, 100%, 40%);">+# with this config and another one with osmo-stp-ran.cfg.</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+line vty</span><br><span style="color: hsl(120, 100%, 40%);">+ bind ${STP_CN_IP}</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+cs7 instance 0</span><br><span style="color: hsl(120, 100%, 40%);">+ xua rkm routing-key-allocation dynamic-permitted</span><br><span style="color: hsl(120, 100%, 40%);">+ listen m3ua 2905</span><br><span style="color: hsl(120, 100%, 40%);">+  accept-asp-connections dynamic-permitted</span><br><span style="color: hsl(120, 100%, 40%);">+  local-ip ${STP_CN_IP}</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+${foreach(LOG_OUTPUT)}</span><br><span style="color: hsl(120, 100%, 40%);">+log ${LOG_OUTPUTn_TYPE}</span><br><span style="color: hsl(120, 100%, 40%);">+${include(common_logging)}</span><br><span style="color: hsl(120, 100%, 40%);">+ logging level linp notice</span><br><span style="color: hsl(120, 100%, 40%);">+ logging level lss7 notice</span><br><span style="color: hsl(120, 100%, 40%);">+ logging level lsccp notice</span><br><span style="color: hsl(120, 100%, 40%);">+ logging level lsua notice</span><br><span style="color: hsl(120, 100%, 40%);">+ logging level lm3ua notice</span><br><span style="color: hsl(120, 100%, 40%);">+${foreach_end}</span><br><span>diff --git a/net/templates/osmo-stp.cfg b/net/templates/osmo-stp-ran.cfg</span><br><span>similarity index 70%</span><br><span>rename from net/templates/osmo-stp.cfg</span><br><span>rename to net/templates/osmo-stp-ran.cfg</span><br><span>index d7d1515..c753108 100644</span><br><span>--- a/net/templates/osmo-stp.cfg</span><br><span>+++ b/net/templates/osmo-stp-ran.cfg</span><br><span>@@ -1,8 +1,16 @@</span><br><span> ${include(common_template_warning)}</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+# This file does not get used by default, only if STP_CN_IP and STP_RAN_IP are</span><br><span style="color: hsl(120, 100%, 40%);">+# changed to be different!</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+line vty</span><br><span style="color: hsl(120, 100%, 40%);">+ bind ${STP_RAN_IP}</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span> cs7 instance 0</span><br><span>  xua rkm routing-key-allocation dynamic-permitted</span><br><span>  listen m3ua 2905</span><br><span>   accept-asp-connections dynamic-permitted</span><br><span style="color: hsl(120, 100%, 40%);">+  local-ip ${STP_RAN_IP}</span><br><span> </span><br><span> ${foreach(LOG_OUTPUT)}</span><br><span> log ${LOG_OUTPUTn_TYPE}</span><br><span>diff --git a/net/templates/run.sh b/net/templates/run.sh</span><br><span>index cd0fc72..311cdd9 100755</span><br><span>--- a/net/templates/run.sh</span><br><span>+++ b/net/templates/run.sh</span><br><span>@@ -81,8 +81,10 @@</span><br><span> #mgw4bsc="strace osmo-mgw -c osmo-mgw-for-bsc.cfg"</span><br><span> mgw4bsc="osmo-mgw -c osmo-mgw-for-bsc.cfg"</span><br><span> hlr="LD_LIBRARY_PATH=/usr/local/lib gdb -ex run --args osmo-hlr --db-upgrade"</span><br><span style="color: hsl(0, 100%, 40%);">-stp="osmo-stp"</span><br><span style="color: hsl(120, 100%, 40%);">+stp4cn="osmo-stp -c osmo-stp-cn.cfg"</span><br><span style="color: hsl(120, 100%, 40%);">+stp4ran="osmo-stp -c osmo-stp-ran.cfg"</span><br><span> bsc="LD_LIBRARY_PATH=/usr/local/lib gdb -ex run --args osmo-bsc -c osmo-bsc.cfg"</span><br><span style="color: hsl(120, 100%, 40%);">+bscnat="osmo-bsc-nat"</span><br><span> </span><br><span> if [ "x${MSC_MNCC}" != "xinternal" ]; then</span><br><span>   sipcon="osmo-sip-connector -c osmo-sip-connector.cfg"</span><br><span>@@ -123,9 +125,23 @@</span><br><span> term "$ggsn" GGSN &</span><br><span> PIDS="$PIDS $!"</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-sleep .2</span><br><span style="color: hsl(0, 100%, 40%);">-term "$stp" STP &</span><br><span style="color: hsl(0, 100%, 40%);">-PIDS="$PIDS $!"</span><br><span style="color: hsl(120, 100%, 40%);">+if [ "${STP_CN_IP}" = "${STP_RAN_IP}" ]; then</span><br><span style="color: hsl(120, 100%, 40%);">+  sleep .2</span><br><span style="color: hsl(120, 100%, 40%);">+  term "$stp4cn" STP &</span><br><span style="color: hsl(120, 100%, 40%);">+  PIDS="$PIDS $!"</span><br><span style="color: hsl(120, 100%, 40%);">+else</span><br><span style="color: hsl(120, 100%, 40%);">+  sleep .2</span><br><span style="color: hsl(120, 100%, 40%);">+  term "$stp4cn" STP4CN &</span><br><span style="color: hsl(120, 100%, 40%);">+  PIDS="$PIDS $!"</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+  sleep .2</span><br><span style="color: hsl(120, 100%, 40%);">+  term "$stp4ran" STP4RAN &</span><br><span style="color: hsl(120, 100%, 40%);">+  PIDS="$PIDS $!"</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+  sleep .2</span><br><span style="color: hsl(120, 100%, 40%);">+  term "$bscnat" BSCNAT &</span><br><span style="color: hsl(120, 100%, 40%);">+  PIDS="$PIDS $!"</span><br><span style="color: hsl(120, 100%, 40%);">+fi</span><br><span> </span><br><span> sleep .2</span><br><span> term "$hlr" HLR &</span><br><span>@@ -199,6 +215,7 @@</span><br><span> killall -9 osmo-stp</span><br><span> sudo killall tcpdump</span><br><span> killall osmo-ggsn</span><br><span style="color: hsl(120, 100%, 40%);">+killall osmo-bsc-nat</span><br><span> </span><br><span> if [ "x${MSC_MNCC}" != "xinternal" ]; then</span><br><span>   # 'killall' seems to work only with the shortened name</span><br><span></span><br></pre><p>To view, visit <a href="https://gerrit.osmocom.org/c/osmo-dev/+/26668">change 26668</a>. To unsubscribe, or for help writing mail filters, visit <a href="https://gerrit.osmocom.org/settings">settings</a>.</p><div itemscope itemtype="http://schema.org/EmailMessage"><div itemscope itemprop="action" itemtype="http://schema.org/ViewAction"><link itemprop="url" href="https://gerrit.osmocom.org/c/osmo-dev/+/26668"/><meta itemprop="name" content="View Change"/></div></div>

<div style="display:none"> Gerrit-Project: osmo-dev </div>
<div style="display:none"> Gerrit-Branch: master </div>
<div style="display:none"> Gerrit-Change-Id: I8bfbd00bfeeebc6e1b87a8cd6333212db4380653 </div>
<div style="display:none"> Gerrit-Change-Number: 26668 </div>
<div style="display:none"> Gerrit-PatchSet: 1 </div>
<div style="display:none"> Gerrit-Owner: osmith <osmith@sysmocom.de> </div>
<div style="display:none"> Gerrit-MessageType: newchange </div>