aboutsummaryrefslogtreecommitdiffstats
path: root/doc/manuals/chapters/running.adoc
blob: a3928832bd332abb387e26b7d3fc4cc9564531d7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
== Running OsmoMSC

The OsmoMSC executable (`osmo-msc`) offers the following command-line
arguments:

=== SYNOPSIS

*osmo-msc* [-h|-V] [-d 'DBGMASK'] [-D] [-c 'CONFIGFILE'] [-s] [-T] [-e 'LOGLEVEL'] [-l 'DATABASE'] [-M 'SOCKETPATH'] [-C]

=== OPTIONS

*-h, --help*::
	Print a short help message about the supported options
*-V, --version*::
	Print the compile-time version number of the program
*-d, --debug 'DBGMASK','DBGLEVELS'*::
	Set the log subsystems and levels for logging to stderr. This
	has mostly been superseded by VTY-based logging configuration,
	see <<logging>> for further information.
*-D, --daemonize*::
	Fork the process as a daemon into background.
*-c, --config-file 'CONFIGFILE'*::
	Specify the file and path name of the configuration file to be
	used. If none is specified, use `osmo-msc.cfg` in the current
	working directory.
*-s, --disable-color*::
	Disable colors for logging to stderr. This has mostly been
	deprecated by VTY based logging configuration, see <<logging>>
	for more information.
*-T, --timestamp*::
	Enable time-stamping of log messages to stderr. This has mostly
	been deprecated by VTY based logging configuration, see
	<<logging>> for more information.
*-e, --log-level 'LOGLEVEL'*::
	Set the global log level for logging to stderr. This has mostly
	been deprecated by VTY based logging configuration, see
	<<logging>> for more information.
*-l, --database 'DATABASE'*::
	Specify the file name of the SQLite3 database to use as SMS storage
*-M, --mncc-sock-path*::
	Enable the MNCC socket for an external MNCC handler. See
	<<mncc>> for further information.
*-m, --mncc-sock*::
	Same as option -M (deprecated).
*-C, --no-dbcounter*::
	Deprecated. DB statistics and counter has been removed.
	This option is only valid for compatibility and does nothing.


=== Multiple instances

Running multiple instances of `osmo-msc` on the same computer is possible if all
interfaces (VTY, CTRL) are separated using the appropriate configuration
options. The IP based interfaces are binding to local host by default. In order
to separate the processes, the user has to bind those services to specific but
different IP addresses and/or ports.

The VTY and the Control interface can be bound to IP addresses from the loopback
address range, for example:

----
line vty
 bind 127.0.0.2
ctrl
 bind 127.0.0.2
----

If external SMPP is enabled, you may bind it to a different interface using:

----
smpp
 local-tcp-ip 10.23.42.1 2775
----

More on SMPP configuration in <<smpp-config-global>>.

The external MNCC handler is a UNIX domain socket that is created when external MNCC handling is configured. A separate
path must be used per osmo-msc instance:

----
msc
 mncc external /tmp/mncc_socket
----

More on MNCC in <<mncc-external>>.

The SGs interface by default listens on 0.0.0.0:29118. Configure a different IP and/or port for each osmo-msc instance.
You may also want to configure different VLR names:

----
sgs
 local-ip 127.0.0.1
 local-port 29118
 vlr-name vlr.example.net
----

For the following links, OsmoMSC acts as a client and does not listen/bind to a
specific interface, and will hence not encounter conflicts for multiple instances
running on the same interface:

- The SCCP/M3UA links are established by OsmoMSC contacting an STP.
- The GSUP link is established by OsmoMSC contacting an HLR.
- The MGCP link is established by OsmoMSC contacting an MGW.


=== Configure primary links

==== Configure SCCP/M3UA to accept _A_ and _IuCS_ links

OsmoMSC acts as client to contact an STP instance and establish an SCCP/M3UA
link.

An example configuration of OsmoMSC's SCCP link:

----
cs7 instance 0
 point-code 0.23.1
 asp my-OsmoMSC 2905 0 m3ua
  remote-ip 127.0.0.1
  sctp-role client
 as as-clnt-OsmoMSC-A-Iu m3ua
  asp my-OsmoMSC
----

This configuration is explained in detail in <<cs7_config>>.

Note that _A_ and _IuCS_ may use different SCCP instances, if so desired:

----
cs7 instance 0
 asp my-OsmoMSC-A 2905 0 m3ua
  remote-ip 10.23.42.1
cs7 instance 1
 asp my-OsmoMSC-Iu 2905 0 m3ua
  remote-ip 10.23.42.2
msc
 cs7-instance-a 0
 cs7-instance-iu 1
----

==== Configure GSUP to reach the HLR

OsmoMSC will assume a GSUP server (OsmoHLR) to run on the local host and the
default GSUP port (4222). Contacting an HLR at a different IP address can be
configured as follows:

----
hlr
 ! IP address of the remote HLR:
 remote-ip 10.23.42.1
 ! default port is 4222, optionally configurable by:
 remote-port 1234
----