Update IPv6 configuration (#1250)

This commit is contained in:
Sukchan Lee 2021-11-28 16:42:47 +09:00
parent 0ae2743d4b
commit ffc15a7d3d
14 changed files with 148 additions and 63 deletions

View File

@ -27,12 +27,6 @@ freediameter_extensions_builddir = join_paths(
conf_data.set('freediameter_extensions_builddir', conf_data.set('freediameter_extensions_builddir',
freediameter_extensions_builddir) freediameter_extensions_builddir)
if host_system == 'linux'
conf_data.set('loopback_devname', 'lo')
else
conf_data.set('loopback_devname', 'lo0')
endif
example_conf = ''' example_conf = '''
sample.yaml sample.yaml
310014.yaml 310014.yaml

View File

@ -224,13 +224,13 @@ amf:
# pem: nrf.pem # pem: nrf.pem
# - name: nrf.open5gs.org # - name: nrf.open5gs.org
# #
# o SBI Client(http://[fe80::1%@loopback_devname@]:80) # o SBI Client(http://[fd69:f21d:873c:fa::1]:80)
# If prefer_ipv4 is true, http://127.0.0.10:80 is selected. # If prefer_ipv4 is true, http://127.0.0.10:80 is selected.
# #
# sbi: # sbi:
# addr: # addr:
# - 127.0.0.10 # - 127.0.0.10
# - fe80::1%@loopback_devname@ # - fd69:f21d:873c:fa::1
# #
nrf: nrf:
sbi: sbi:

View File

@ -96,13 +96,13 @@ ausf:
# pem: nrf.pem # pem: nrf.pem
# - name: nrf.open5gs.org # - name: nrf.open5gs.org
# #
# o SBI Client(http://[fe80::1%@loopback_devname@]:80) # o SBI Client(http://[fd69:f21d:873c:fa::1]:80)
# If prefer_ipv4 is true, http://127.0.0.10:80 is selected. # If prefer_ipv4 is true, http://127.0.0.10:80 is selected.
# #
# sbi: # sbi:
# addr: # addr:
# - 127.0.0.10 # - 127.0.0.10
# - fe80::1%@loopback_devname@ # - fd69:f21d:873c:fa::1
# #
nrf: nrf:
sbi: sbi:

View File

@ -98,13 +98,13 @@ bsf:
# pem: nrf.pem # pem: nrf.pem
# - name: nrf.open5gs.org # - name: nrf.open5gs.org
# #
# o SBI Client(http://[fe80::1%@loopback_devname@]:80) # o SBI Client(http://[fd69:f21d:873c:fa::1]:80)
# If prefer_ipv4 is true, http://127.0.0.10:80 is selected. # If prefer_ipv4 is true, http://127.0.0.10:80 is selected.
# #
# sbi: # sbi:
# addr: # addr:
# - 127.0.0.10 # - 127.0.0.10
# - fe80::1%@loopback_devname@ # - fd69:f21d:873c:fa::1
# #
nrf: nrf:
sbi: sbi:

View File

@ -113,7 +113,7 @@ logger:
# lac: 43692 # lac: 43692
# - addr # - addr
# - 127.0.0.4 # - 127.0.0.4
# - fe80::2%@loopback_devname@ # - fd69:f21d:873c:fa::2
# map: # map:
# tai: # tai:
# plmn_id: # plmn_id:
@ -237,25 +237,25 @@ mme:
# o Specify SGW addresses the GTP-C must connect to # o Specify SGW addresses the GTP-C must connect to
# #
# o One SGW is defined. # o One SGW is defined.
# If prefer_ipv4 is not true, [fe80::2%@loopback_devname@] is selected. # If prefer_ipv4 is not true, [fd69:f21d:873c:fa::2] is selected.
# gtpc: # gtpc:
# addr: # addr:
# - 127.0.0.3 # - 127.0.0.3
# - fe80::2%@loopback_devname@ # - fd69:f21d:873c:fa::2
# #
# o Two SGW are defined. MME selects SGW with round-robin manner per UE # o Two SGW are defined. MME selects SGW with round-robin manner per UE
# gtpc: # gtpc:
# - addr: 127.0.0.3 # - addr: 127.0.0.3
# - addr: fe80::2%@loopback_devname@ # - addr: fd69:f21d:873c:fa::2
# #
# o Three SGW are defined. MME selects SGW with round-robin manner per UE # o Three SGW are defined. MME selects SGW with round-robin manner per UE
# gtpc: # gtpc:
# - addr # - addr
# - 127.0.0.3 # - 127.0.0.3
# - fe80::2%@loopback_devname@ # - fd69:f21d:873c:fa::2
# - addr # - addr
# - 127.0.0.22 # - 127.0.0.22
# - fe80::12%@loopback_devname@ # - fd69:f21d:873c:fa::12
# - name: sgw3.open5gs.org # - name: sgw3.open5gs.org
# #
# <SGW Selection Mode> # <SGW Selection Mode>
@ -300,17 +300,17 @@ sgwc:
# you can use a specific SMF node for each UE. # you can use a specific SMF node for each UE.
# #
# o Two SMF are defined. 127.0.0.4:2123 is used. # o Two SMF are defined. 127.0.0.4:2123 is used.
# [fe80::3%@loopback_devname@]:2123 is ignored. # [fd69:f21d:873c:fa::3]:2123 is ignored.
# gtpc: # gtpc:
# - addr: 127.0.0.4 # - addr: 127.0.0.4
# - addr: fe80::3%@loopback_devname@ # - addr: fd69:f21d:873c:fa::3
# #
# o One SMF is defined. if prefer_ipv4 is not true, # o One SMF is defined. if prefer_ipv4 is not true,
# [fe80::3%@loopback_devname@] is selected. # [fd69:f21d:873c:fa::3] is selected.
# gtpc: # gtpc:
# - addr: # - addr:
# - 127.0.0.4 # - 127.0.0.4
# - fe80::3%@loopback_devname@ # - fd69:f21d:873c:fa::3
# #
# o Two SMF are defined with a different APN. # o Two SMF are defined with a different APN.
# - Note that if SMF IP for UE is configured in HSS, # - Note that if SMF IP for UE is configured in HSS,

View File

@ -138,13 +138,13 @@ nssf:
# pem: nrf.pem # pem: nrf.pem
# - name: nrf.open5gs.org # - name: nrf.open5gs.org
# #
# o SBI Client(http://[fe80::1%@loopback_devname@]:80) # o SBI Client(http://[fd69:f21d:873c:fa::1]:80)
# If prefer_ipv4 is true, http://127.0.0.10:80 is selected. # If prefer_ipv4 is true, http://127.0.0.10:80 is selected.
# #
# sbi: # sbi:
# addr: # addr:
# - 127.0.0.10 # - 127.0.0.10
# - fe80::1%@loopback_devname@ # - fd69:f21d:873c:fa::1
# #
nrf: nrf:
sbi: sbi:

View File

@ -98,13 +98,13 @@ pcf:
# pem: nrf.pem # pem: nrf.pem
# - name: nrf.open5gs.org # - name: nrf.open5gs.org
# #
# o SBI Client(http://[fe80::1%@loopback_devname@]:80) # o SBI Client(http://[fd69:f21d:873c:fa::1]:80)
# If prefer_ipv4 is true, http://127.0.0.10:80 is selected. # If prefer_ipv4 is true, http://127.0.0.10:80 is selected.
# #
# sbi: # sbi:
# addr: # addr:
# - 127.0.0.10 # - 127.0.0.10
# - fe80::1%@loopback_devname@ # - fd69:f21d:873c:fa::1
# #
nrf: nrf:
sbi: sbi:

View File

@ -26,17 +26,17 @@ logger:
# #
# <GTP-C Server> # <GTP-C Server>
# #
# o GTP-C Server(127.0.0.3:2123, [fe80::2%@loopback_devname@]:2123) # o GTP-C Server(127.0.0.3:2123, [fd69:f21d:873c:fa::2]:2123)
# gtpc: # gtpc:
# addr: # addr:
# - 127.0.0.3 # - 127.0.0.3
# - fe80::2%@loopback_devname@ # - fd69:f21d:873c:fa::2
# #
# o On SGW, Same Configuration(127.0.0.3:2123, # o On SGW, Same Configuration(127.0.0.3:2123,
# [fe80::2%@loopback_devname@]:2123) as below. # [fd69:f21d:873c:fa::2]:2123) as below.
# gtpc: # gtpc:
# - addr: 127.0.0.3 # - addr: 127.0.0.3
# - addr: fe80::2%@loopback_devname@ # - addr: fd69:f21d:873c:fa::2
# #
# <PFCP Server> # <PFCP Server>
# #

View File

@ -86,17 +86,17 @@ logger:
# #
# <GTP-C Server> # <GTP-C Server>
# #
# o GTP-C Server(127.0.0.4:2123, [fe80::3%@loopback_devname@]:2123) # o GTP-C Server(127.0.0.4:2123, [fd69:f21d:873c:fa::3]:2123)
# gtpc: # gtpc:
# addr: # addr:
# - 127.0.0.4 # - 127.0.0.4
# - fe80::3%@loopback_devname@ # - fd69:f21d:873c:fa::3
# #
# o On SMF, Same configuration # o On SMF, Same configuration
# (127.0.0.4:2123, [fe80::3%@loopback_devname@]:2123). # (127.0.0.4:2123, [fd69:f21d:873c:fa::3]:2123).
# gtpc: # gtpc:
# - addr: 127.0.0.4 # - addr: 127.0.0.4
# - addr: fe80::3%@loopback_devname@ # - addr: fd69:f21d:873c:fa::3
# #
# <GTP-U Server>> # <GTP-U Server>>
# #
@ -369,13 +369,13 @@ smf:
# pem: nrf.pem # pem: nrf.pem
# - name: nrf.open5gs.org # - name: nrf.open5gs.org
# #
# o SBI Client(http://[fe80::1%@loopback_devname@]:80) # o SBI Client(http://[fd69:f21d:873c:fa::1]:80)
# If prefer_ipv4 is true, http://127.0.0.10:80 is selected. # If prefer_ipv4 is true, http://127.0.0.10:80 is selected.
# #
# sbi: # sbi:
# addr: # addr:
# - 127.0.0.10 # - 127.0.0.10
# - fe80::1%@loopback_devname@ # - fd69:f21d:873c:fa::1
# #
nrf: nrf:
sbi: sbi:

View File

@ -96,13 +96,13 @@ udm:
# pem: nrf.pem # pem: nrf.pem
# - name: nrf.open5gs.org # - name: nrf.open5gs.org
# #
# o SBI Client(http://[fe80::1%@loopback_devname@]:80) # o SBI Client(http://[fd69:f21d:873c:fa::1]:80)
# If prefer_ipv4 is true, http://127.0.0.10:80 is selected. # If prefer_ipv4 is true, http://127.0.0.10:80 is selected.
# #
# sbi: # sbi:
# addr: # addr:
# - 127.0.0.10 # - 127.0.0.10
# - fe80::1%@loopback_devname@ # - fd69:f21d:873c:fa::1
# #
nrf: nrf:
sbi: sbi:

View File

@ -98,13 +98,13 @@ udr:
# pem: nrf.pem # pem: nrf.pem
# - name: nrf.open5gs.org # - name: nrf.open5gs.org
# #
# o SBI Client(http://[fe80::1%@loopback_devname@]:80) # o SBI Client(http://[fd69:f21d:873c:fa::1]:80)
# If prefer_ipv4 is true, http://127.0.0.10:80 is selected. # If prefer_ipv4 is true, http://127.0.0.10:80 is selected.
# #
# sbi: # sbi:
# addr: # addr:
# - 127.0.0.10 # - 127.0.0.10
# - fe80::1%@loopback_devname@ # - fd69:f21d:873c:fa::1
# #
nrf: nrf:
sbi: sbi:

View File

@ -11,25 +11,117 @@ if [ "$SYSTEM" = "Linux" ]; then
ip addr del 2001:230:cafe::1/48 dev ogstun 2> /dev/null ip addr del 2001:230:cafe::1/48 dev ogstun 2> /dev/null
ip addr add 2001:230:cafe::1/48 dev ogstun ip addr add 2001:230:cafe::1/48 dev ogstun
ip link set ogstun up ip link set ogstun up
ip addr del fe80::2 dev lo 2> /dev/null ip addr del fd69:f21d:873c:fa::1 dev lo 2> /dev/null
ip addr del fe80::3 dev lo 2> /dev/null ip addr del fd69:f21d:873c:fa::2 dev lo 2> /dev/null
ip addr del fe80::4 dev lo 2> /dev/null ip addr del fd69:f21d:873c:fa::3 dev lo 2> /dev/null
ip addr del fe80::5 dev lo 2> /dev/null ip addr del fd69:f21d:873c:fa::4 dev lo 2> /dev/null
ip addr add fe80::2 dev lo ip addr del fd69:f21d:873c:fa::5 dev lo 2> /dev/null
ip addr add fe80::3 dev lo ip addr del fd69:f21d:873c:fa::6 dev lo 2> /dev/null
ip addr add fe80::4 dev lo ip addr del fd69:f21d:873c:fa::7 dev lo 2> /dev/null
ip addr add fe80::5 dev lo ip addr del fd69:f21d:873c:fa::8 dev lo 2> /dev/null
ip addr del fd69:f21d:873c:fa::9 dev lo 2> /dev/null
ip addr del fd69:f21d:873c:fa::10 dev lo 2> /dev/null
ip addr del fd69:f21d:873c:fa::11 dev lo 2> /dev/null
ip addr del fd69:f21d:873c:fa::12 dev lo 2> /dev/null
ip addr del fd69:f21d:873c:fa::13 dev lo 2> /dev/null
ip addr del fd69:f21d:873c:fa::14 dev lo 2> /dev/null
ip addr del fd69:f21d:873c:fa::15 dev lo 2> /dev/null
ip addr del fd69:f21d:873c:fa::16 dev lo 2> /dev/null
ip addr del fd69:f21d:873c:fa::17 dev lo 2> /dev/null
ip addr del fd69:f21d:873c:fa::18 dev lo 2> /dev/null
ip addr del fd69:f21d:873c:fa::19 dev lo 2> /dev/null
ip addr del fd69:f21d:873c:fa::20 dev lo 2> /dev/null
ip addr add fd69:f21d:873c:fa::1 dev lo
ip addr add fd69:f21d:873c:fa::2 dev lo
ip addr add fd69:f21d:873c:fa::3 dev lo
ip addr add fd69:f21d:873c:fa::4 dev lo
ip addr add fd69:f21d:873c:fa::5 dev lo
ip addr add fd69:f21d:873c:fa::6 dev lo
ip addr add fd69:f21d:873c:fa::7 dev lo
ip addr add fd69:f21d:873c:fa::8 dev lo
ip addr add fd69:f21d:873c:fa::9 dev lo
ip addr add fd69:f21d:873c:fa::10 dev lo
ip addr add fd69:f21d:873c:fa::11 dev lo
ip addr add fd69:f21d:873c:fa::12 dev lo
ip addr add fd69:f21d:873c:fa::13 dev lo
ip addr add fd69:f21d:873c:fa::14 dev lo
ip addr add fd69:f21d:873c:fa::15 dev lo
ip addr add fd69:f21d:873c:fa::16 dev lo
ip addr add fd69:f21d:873c:fa::17 dev lo
ip addr add fd69:f21d:873c:fa::18 dev lo
ip addr add fd69:f21d:873c:fa::19 dev lo
ip addr add fd69:f21d:873c:fa::20 dev lo
else else
ifconfig lo0 alias 127.0.0.2 netmask 255.255.255.255 ifconfig lo0 alias 127.0.0.2 netmask 255.255.255.255
ifconfig lo0 alias 127.0.0.3 netmask 255.255.255.255 ifconfig lo0 alias 127.0.0.3 netmask 255.255.255.255
ifconfig lo0 alias 127.0.0.4 netmask 255.255.255.255 ifconfig lo0 alias 127.0.0.4 netmask 255.255.255.255
ifconfig lo0 alias 127.0.0.5 netmask 255.255.255.255 ifconfig lo0 alias 127.0.0.5 netmask 255.255.255.255
ifconfig lo0 inet6 delete fe80::2 prefixlen 128 2> /dev/null sysctl -w net.inet.ip.forwarding=1
ifconfig lo0 inet6 delete fe80::3 prefixlen 128 2> /dev/null sysctl -w net.inet6.ip6.forwarding=1
ifconfig lo0 inet6 delete fe80::4 prefixlen 128 2> /dev/null ifconfig lo0 alias 127.0.0.2 netmask 255.255.255.255
ifconfig lo0 inet6 delete fe80::5 prefixlen 128 2> /dev/null ifconfig lo0 alias 127.0.0.3 netmask 255.255.255.255
ifconfig lo0 inet6 add fe80::2 prefixlen 128 ifconfig lo0 alias 127.0.0.4 netmask 255.255.255.255
ifconfig lo0 inet6 add fe80::3 prefixlen 128 ifconfig lo0 alias 127.0.0.5 netmask 255.255.255.255
ifconfig lo0 inet6 add fe80::4 prefixlen 128 ifconfig lo0 alias 127.0.0.6 netmask 255.255.255.255
ifconfig lo0 inet6 add fe80::5 prefixlen 128 ifconfig lo0 alias 127.0.0.7 netmask 255.255.255.255
ifconfig lo0 alias 127.0.0.8 netmask 255.255.255.255
ifconfig lo0 alias 127.0.0.9 netmask 255.255.255.255
ifconfig lo0 alias 127.0.0.10 netmask 255.255.255.255
ifconfig lo0 alias 127.0.0.11 netmask 255.255.255.255
ifconfig lo0 alias 127.0.0.12 netmask 255.255.255.255
ifconfig lo0 alias 127.0.0.13 netmask 255.255.255.255
ifconfig lo0 alias 127.0.0.14 netmask 255.255.255.255
ifconfig lo0 alias 127.0.0.15 netmask 255.255.255.255
ifconfig lo0 alias 127.0.0.16 netmask 255.255.255.255
ifconfig lo0 alias 127.0.0.17 netmask 255.255.255.255
ifconfig lo0 alias 127.0.0.18 netmask 255.255.255.255
ifconfig lo0 alias 127.0.0.19 netmask 255.255.255.255
ifconfig lo0 alias 127.0.0.20 netmask 255.255.255.255
ifconfig lo0 inet6 delete fd69:f21d:873c:fa::1 prefixlen 128 2> /dev/null
ifconfig lo0 inet6 delete fd69:f21d:873c:fa::2 prefixlen 128 2> /dev/null
ifconfig lo0 inet6 delete fd69:f21d:873c:fa::3 prefixlen 128 2> /dev/null
ifconfig lo0 inet6 delete fd69:f21d:873c:fa::4 prefixlen 128 2> /dev/null
ifconfig lo0 inet6 delete fd69:f21d:873c:fa::5 prefixlen 128 2> /dev/null
ifconfig lo0 inet6 delete fd69:f21d:873c:fa::6 prefixlen 128 2> /dev/null
ifconfig lo0 inet6 delete fd69:f21d:873c:fa::7 prefixlen 128 2> /dev/null
ifconfig lo0 inet6 delete fd69:f21d:873c:fa::8 prefixlen 128 2> /dev/null
ifconfig lo0 inet6 delete fd69:f21d:873c:fa::9 prefixlen 128 2> /dev/null
ifconfig lo0 inet6 delete fd69:f21d:873c:fa::10 prefixlen 128 2> /dev/null
ifconfig lo0 inet6 delete fd69:f21d:873c:fa::11 prefixlen 128 2> /dev/null
ifconfig lo0 inet6 delete fd69:f21d:873c:fa::12 prefixlen 128 2> /dev/null
ifconfig lo0 inet6 delete fd69:f21d:873c:fa::13 prefixlen 128 2> /dev/null
ifconfig lo0 inet6 delete fd69:f21d:873c:fa::14 prefixlen 128 2> /dev/null
ifconfig lo0 inet6 delete fd69:f21d:873c:fa::15 prefixlen 128 2> /dev/null
ifconfig lo0 inet6 delete fd69:f21d:873c:fa::16 prefixlen 128 2> /dev/null
ifconfig lo0 inet6 delete fd69:f21d:873c:fa::17 prefixlen 128 2> /dev/null
ifconfig lo0 inet6 delete fd69:f21d:873c:fa::18 prefixlen 128 2> /dev/null
ifconfig lo0 inet6 delete fd69:f21d:873c:fa::19 prefixlen 128 2> /dev/null
ifconfig lo0 inet6 delete fd69:f21d:873c:fa::20 prefixlen 128 2> /dev/null
ifconfig lo0 inet6 add fd69:f21d:873c:fa::1 prefixlen 128
ifconfig lo0 inet6 add fd69:f21d:873c:fa::2 prefixlen 128
ifconfig lo0 inet6 add fd69:f21d:873c:fa::3 prefixlen 128
ifconfig lo0 inet6 add fd69:f21d:873c:fa::4 prefixlen 128
ifconfig lo0 inet6 add fd69:f21d:873c:fa::5 prefixlen 128
ifconfig lo0 inet6 add fd69:f21d:873c:fa::6 prefixlen 128
ifconfig lo0 inet6 add fd69:f21d:873c:fa::7 prefixlen 128
ifconfig lo0 inet6 add fd69:f21d:873c:fa::8 prefixlen 128
ifconfig lo0 inet6 add fd69:f21d:873c:fa::9 prefixlen 128
ifconfig lo0 inet6 add fd69:f21d:873c:fa::10 prefixlen 128
ifconfig lo0 inet6 add fd69:f21d:873c:fa::11 prefixlen 128
ifconfig lo0 inet6 add fd69:f21d:873c:fa::12 prefixlen 128
ifconfig lo0 inet6 add fd69:f21d:873c:fa::13 prefixlen 128
ifconfig lo0 inet6 add fd69:f21d:873c:fa::14 prefixlen 128
ifconfig lo0 inet6 add fd69:f21d:873c:fa::15 prefixlen 128
ifconfig lo0 inet6 add fd69:f21d:873c:fa::16 prefixlen 128
ifconfig lo0 inet6 add fd69:f21d:873c:fa::17 prefixlen 128
ifconfig lo0 inet6 add fd69:f21d:873c:fa::18 prefixlen 128
ifconfig lo0 inet6 add fd69:f21d:873c:fa::19 prefixlen 128
ifconfig lo0 inet6 add fd69:f21d:873c:fa::20 prefixlen 128
if [ "$SYSTEM" = "Darwin" ]; then
if ! test -f /etc/pf.anchors/org.open5gs; then
sudo sh -c "echo 'nat on {en0} from 10.45.0.0/16 to any -> {en0}' > /etc/pf.anchors/org.open5gs"
sudo sh -c "echo 'nat on {en0} from 2001:230:cafe::1/48 to any -> {en0}' > /etc/pf.anchors/org.open5gs"
fi
pfctl -e -f /etc/pf.anchors/org.open5gs
fi
fi fi

View File

@ -22,10 +22,4 @@ conf_data.set('sysconfdir', sysconfdir)
conf_data.set('libdir', libdir) conf_data.set('libdir', libdir)
conf_data.set('localstatedir', localstatedir) conf_data.set('localstatedir', localstatedir)
if host_system == 'linux'
conf_data.set('loopback_devname', 'lo')
else
conf_data.set('loopback_devname', 'lo0')
endif
subdir('db') subdir('db')

View File

@ -1059,7 +1059,6 @@ void sgwc_sxa_handle_session_deletion_response(
ogs_assert(pfcp_xact); ogs_assert(pfcp_xact);
ogs_assert(pfcp_rsp); ogs_assert(pfcp_rsp);
ogs_assert(gtp_message);
cause_value = OGS_GTP_CAUSE_REQUEST_ACCEPTED; cause_value = OGS_GTP_CAUSE_REQUEST_ACCEPTED;
@ -1082,6 +1081,11 @@ void sgwc_sxa_handle_session_deletion_response(
ogs_pfcp_xact_commit(pfcp_xact); ogs_pfcp_xact_commit(pfcp_xact);
if (!gtp_message) {
ogs_error("No GTP Message");
goto cleanup;
}
switch (gtp_message->h.type) { switch (gtp_message->h.type) {
case OGS_GTP_DELETE_SESSION_RESPONSE_TYPE: case OGS_GTP_DELETE_SESSION_RESPONSE_TYPE:
/* /*
@ -1144,6 +1148,7 @@ void sgwc_sxa_handle_session_deletion_response(
ogs_expect(rv == OGS_OK); ogs_expect(rv == OGS_OK);
} }
cleanup:
sgwc_sess_remove(sess); sgwc_sess_remove(sess);
} }