Skip to content

Network#

Howto's#

Defaults#

Commented File-structure#

network.xml
<?xml version="1.0" encoding="utf-8"?>
<network version="1.34.0">
  <ethernet>
    <ipv4>
      <!-- type: enum
           accepted values:
             dhcp
             static -->
      <mode>dhcp</mode>
      <!-- type: string
           matched against: '^(([01]?\d\d?|2[0-4]\d|25[0-5])\.([01]?\d\d?|2[0-4]\d|25[0-5])\.([01]?\d\d?|2[0-4]\d|25[0-5])\.([01]?\d\d?|2[0-4]\d|25[0-5]))?$' -->
      <address>192.168.0.1</address>
      <!-- type: string
           matched against: '^((([012]?\d|3[012])|(((0|128|192|24[08]|25[24])\.0\.0\.0)|(255\.(0|128|192|24[08]|25[24])\.0\.0)|(255\.255\.(0|128|192|24[08]|25[24])\.0)|(255\.255\.255\.(0|128|192|24[08]|25[245])))))?$' -->
      <netmask>255.255.255.0</netmask>
      <!-- type: string
           matched against: '^(([01]?\d\d?|2[0-4]\d|25[0-5])\.([01]?\d\d?|2[0-4]\d|25[0-5])\.([01]?\d\d?|2[0-4]\d|25[0-5])\.([01]?\d\d?|2[0-4]\d|25[0-5]))?$' -->
      <gateway>192.168.0.1</gateway>
      <!-- type: string
           matched against: '^((([01]?\d\d?|2[0-4]\d|25[0-5])\.([01]?\d\d?|2[0-4]\d|25[0-5])\.([01]?\d\d?|2[0-4]\d|25[0-5])\.([01]?\d\d?|2[0-4]\d|25[0-5])|(\s*)))?$' -->
      <dns1>192.168.0.100</dns1>
      <!-- type: string
           matched against: '^((([01]?\d\d?|2[0-4]\d|25[0-5])\.([01]?\d\d?|2[0-4]\d|25[0-5])\.([01]?\d\d?|2[0-4]\d|25[0-5])\.([01]?\d\d?|2[0-4]\d|25[0-5])|(\s*)))?$' -->
      <dns2>192.168.0.100</dns2>
    </ipv4>
    <ipv6>
      <!-- type: enum
           accepted values:
             automatic
             disable -->
      <mode>disable</mode>
      <!-- type: boolean -->
      <privacyExtensions>false</privacyExtensions>
      <!-- type: string
           matched against: '^(((([0-9a-fA-F]{1,4}:){7,7}([0-9a-fA-F]{1,4}))|(([0-9a-fA-F]{1,4}:){1,7})|(([0-9a-fA-F]{1,4}:){1,6}(:[0-9a-fA-F]{1,4}))|(([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2})|(([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3})|(([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4})|(([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5})|(([0-9a-fA-F]{1,4}:){1,1}(:[0-9a-fA-F]{1,4}){1,6})|(:((:[0-9a-fA-F]{1,4}){1,7})|:)){0,1})$' -->
      <dns1>2001:db8:1::1</dns1>
      <!-- type: string
           matched against: '^(((([0-9a-fA-F]{1,4}:){7,7}([0-9a-fA-F]{1,4}))|(([0-9a-fA-F]{1,4}:){1,7})|(([0-9a-fA-F]{1,4}:){1,6}(:[0-9a-fA-F]{1,4}))|(([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2})|(([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3})|(([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4})|(([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5})|(([0-9a-fA-F]{1,4}:){1,1}(:[0-9a-fA-F]{1,4}){1,6})|(:((:[0-9a-fA-F]{1,4}){1,7})|:)){0,1})$' -->
      <dns2>2001:db8:1::1</dns2>
    </ipv6>
    <vlan>
      <!-- type: boolean -->
      <phoneActive>false</phoneActive>
      <!-- type: integer
           maximum: 4095 -->
      <phoneId>0</phoneId>
      <!-- type: integer
           maximum: 7 -->
      <phonePriority>0</phonePriority>
      <!-- type: boolean -->
      <workstationActive>false</workstationActive>
      <!-- type: integer
           maximum: 4095 -->
      <workstationId>0</workstationId>
      <!-- type: integer
           maximum: 7 -->
      <workstationPriority>0</workstationPriority>
    </vlan>
  </ethernet>
  <vpn>
    <!-- type: boolean -->
    <active>false</active>
    <!-- type: enum
         accepted values:
           IpsecXauthPSK
           IpsecXauthRSA
           IpsecHybridRSA
           L2TPIpsecPSK
           L2TPIpsecRSA
           OpenVPN -->
    <vpnType>IpsecXauthPSK</vpnType>
    <!-- unique identifier of the Profile
         type: string -->
    <name></name>
    <!-- server address or resolvable name
         type: string -->
    <server></server>
    <!-- username, used for xauth
         type: string -->
    <username></username>
    <!-- pasword, used for xauth
         type: string -->
    <password></password>
    <!-- multiple entries are seperated by space
         type: string -->
    <dnsServers></dnsServers>
    <!-- multiple entries are seperated by space
         type: string -->
    <searchDomains></searchDomains>
    <!-- multiple entries are seperated by space, format 10.1.0.0/16
         type: string -->
    <routes></routes>
    <!-- type: string -->
    <ipsecIdentifier></ipsecIdentifier>
    <!-- preshared key, used in XauthPSK
         type: string -->
    <ipsecSecret></ipsecSecret>
    <!-- X509 certificate in PEM format
         type: string -->
    <ipsecUserCert></ipsecUserCert>
    <!-- RSA key in PEM format
         type: string -->
    <ipsecUserPrivateKey></ipsecUserPrivateKey>
    <!-- X509 certificate in PEM format
         type: string -->
    <ipsecCaCert></ipsecCaCert>
    <!-- X509 certificate in PEM format
         type: string -->
    <ipsecServerCert></ipsecServerCert>
    <!-- ensures, that traffic designated for the vpn is never routed
         except through the ipsec tunnel. Requires a ipv4 server and dns
         entry to work.
         type: boolean -->
    <ipsecLockdown>false</ipsecLockdown>
    <!-- file content of an openvpn config file
         type: string -->
    <openvpnConfig></openvpnConfig>
  </vpn>
  <topology>
    <!-- rtp frame size in milliseconds (typically 10, 20 or 30 ms)
         values lower than 10 will be handled as 0, which enables codec
         specific behaviour (the default)
         type: integer
         maximum: 30 -->
    <frameSize>0</frameSize>
    <jitterBuffer>
      <!-- Initial prefetch delay in milliseconds.
           The value must be between minimumPrefetch and maximumPrefetch.
           If the value is 0 prefetch will be disabled.
           type: integer -->
      <init>0</init>
      <!-- Minimum prefetch delay in milliseconds.
           type: integer -->
      <minimumPrefetch>60</minimumPrefetch>
      <!-- Maximum prefetch delay in milliseconds.
           type: integer -->
      <maximumPrefetch>240</maximumPrefetch>
      <!-- delay that can be accommodated by the jitter buffer in milliseconds.
           type: integer -->
      <max>360</max>
    </jitterBuffer>
    <!-- A list of stun-server confiugurations.
         type: list
         maximum: 8 elements -->
    <stunServers>
      <!-- A single stun-server confiuguration. -->
      <stunServer>
        <!-- Hostname/ip of the stun server
             type: string -->
        <stunUrl></stunUrl>
        <!-- port of the stun server
             type: integer
             minimum: 1
             maximum: 65535 -->
        <stunPort>3478</stunPort>
        <!-- interval in which stun requests are issued. Value in minutes.
             type: integer
             minimum: 1
             maximum: 60 -->
        <stunRequestInterval>5</stunRequestInterval>
      </stunServer>
    </stunServers>
    <!-- Validate the hostname against the CN of the provided Certificate
         on sip tls connections.
         type: boolean -->
    <checkHostname>true</checkHostname>
    <!-- send rtp data only if a voice is active. This setting takes
         effect on the next start of a stream.
         type: boolean -->
    <voiceActivityDetection>false</voiceActivityDetection>
    <lldp>
      <!-- send and receive lldp messages
           type: boolean -->
      <active>true</active>
      <!-- retransmit interval in seconds
           type: integer
           minimum: 30 -->
      <interval>30</interval>
    </lldp>
    <!-- send sip headers in a short form. This can be used if UDP
         transports are used and the messages are to big.
         type: boolean -->
    <useCompactSipHeaders>false</useCompactSipHeaders>
    <!-- RFC 3261 states that UDP messages that are too big should
         be sent via a reliable connection such as TCP.
         This is the default behaviour which can be disabled using
         this config.
         type: boolean -->
    <disableTcpSwitch>false</disableTcpSwitch>
  </topology>
</network>