Open source 5G core network base on 3GPP R15

free5GC

Release License Forum CodeFactor Go Report Card PRs Welcome

What is free5GC

The free5GC is an open-source project for 5th generation (5G) mobile core networks. The ultimate goal of this project is to implement the 5G core network (5GC) defined in 3GPP Release 15 (R15) and beyond.

For more information, please refer to free5GC official site.

Documentation

For document, please reference to Documentation.

Discussion

For questions and support please use the official forum. The issue list of this repo is exclusively for bug reports and feature requests.

Contributing

We're welcome for contribution via GitHub Pull Request.

Release Note

Detailed changes for each release are documented in the release notes.Detailed changes for each release are documented in the release notes.

License

free5GC is now under Apache 2.0 license.

Owner
free5GC
The free5GC is an open-source project for 5th generation (5G) mobile core networks
free5GC
Comments
  • DefaultServiceIP Configuration

    DefaultServiceIP Configuration

    Hi,

    Is it possible to configure DefaultServiceIP in other components like the NRF?

    image

    The reason for this is to be able to configure a separate IP/URL apart from the listening IP address, this will make deploying free5gc easier in a service mesh.

    I tried to add the DefaultServiceIP parameter just like the NRF to other components configuration but this did not reflect in the NF profiles that is advertised to the NRF.

  • free5gc version 3.0.4

    free5gc version 3.0.4

    Could you provide the github link to install free5gc version 3.0.4 ? The current github has been updated with the newer version 3.0.5 and I could not find the older version anywhere.

    Thanks, Pradnya

  • [Bugs] Unable to connect to n3iwf using a UE

    [Bugs] Unable to connect to n3iwf using a UE

    Describe the bug

    Unable to connect to n3iwf using a UE

    To Reproduce

    Steps to reproduce the behavior:

    1. I used the following UE "https://github.com/my5G/my5G-non3GPP-access", to connect to free5gc n3iwf

    Expected behavior

    I expected the UE to connect to the free5gc but the connection hangs during marshalling.

    Screenshots

    None

    Environment (please complete the following information):

    • free5GC Version: [e.g. v3.0.5]
    • OS: [e.g. Ubuntu 20.04]

    Is there any UE free5gc suggests other than the Test script?

  • [Docs] Does mnc and mcc in

    [Docs] Does mnc and mcc in "*cfg.conf" need to specify zero-padded three-digit numbers?

    Suggestion

    I would like to report something that I noticed about the format of mcc and mnc in *cfg.conf.

    For example, "5G:mnc093.mcc208.3gppnetwork.org". (mcc=208, mnc=93) free5gc/src/amf/factory/factory.go:

    func InitConfigFactory(f string) {
            content, err := ioutil.ReadFile(f)
            checkErr(err)
    
            AmfConfig = Config{}
    
            err = yaml.Unmarshal([]byte(content), &AmfConfig) <==
            checkErr(err)
    
            logger.InitLog.Infof("Successfully initialize configuration %s", f)
    }
    

    As a result of yaml.Unmarshal([]byte(content), &AmfConfig), if amfcfg.conf contains mnc: 93, as a result of reading, the AmfConfig instance will contain the 93 string.

    However, when NGSetupRequest is received from RAN, the following log is displayed and it fails because the received mnc=093 and mnc=93 in amfcfg.conf do not match.

    "NG-Setup failure: Cannot find Served TAI in AMF AMF=NGAP"

    So, it seems good to write mcc and mnc in *cfg.conf with three digits with zero padding.

    I'm sorry if I had any misunderstanding.

  • test registration on wireshark shows

    test registration on wireshark shows "Destination unreachable"

    Hi Everyone,

    We are working on using wireshark to observe the package while running test.sh registration, and all the packages on wireshark with filter"pfcp||icmp||gtp" shows "Destination Unreachable(Host unreachable)". The destination address shows on wireshark is 192.168.1. xxx, protocol is ICMP. I think it is related to the ip address settings in the configure file. We didn't change any ip address in the smfcfg.conf and uerouting.yaml file. Could you help us to take a look at this issue?

    Thank you, Best Regards, Ying

  • [Bugs] Data Network Name value in DNN Configurations cannot be changed from the default

    [Bugs] Data Network Name value in DNN Configurations cannot be changed from the default "internet"

    Hi @free5gc-org

    When I registered the subscriber information using WebConsole, even if I changed the value of Data Network Name of DNN Configurations from the default internet to another string (eg. internet2), when I checked the contents of mongodb, it was still internet.

    Also, the function to change subscriber information does not work properly.

    When will the these major bugs in WebConsole are fixed?

    Thank you very much in advance.

  • UPF GTP packets fails, Whether GTP is implemented

    UPF GTP packets fails, Whether GTP is implemented

    Error handling UP socket UPF=Util WARN[2020-05-24T17:09:36+05:30] /home/free5gc/go/src/free5gc/src/upf/src/up/up_path.c:119 GtpHandler() This type[255] of GTPv1 header does not implement yet UPF=Util ERRO[2020-05-24T17:09:36+05:30] /home/free5gc/go/src/free5gc/src/upf/src/upf_init.c:210 PacketReceiverThread() Error handling UP socket UPF=Util WARN[2020-05-24T17:09:45+05:30] /home/free5gc/go/src/free5gc/src/upf/src/up/up_path.c:119 GtpHandler() This type[255] of GTPv1 header does not implement yet UPF=Util ERRO[2020-05-24T17:09:45+05:30] /home/free5gc/go/src/free5gc/src/upf/src/upf_init.c:210 PacketReceiverThread() Error handling UP socket UPF=Util WARN[2020-05-24T17:10:08+05:30] /home/free5gc/go/src/free5gc/src/upf/src/up/up_path.c:119 GtpHandler() This type[255] of GTPv1 header does not implement yet UPF=Util ERRO[2020-05-24T17:10:08+05:30] /home/free5gc/go/src/free5gc/src/upf/src/upf_init.c:210 PacketReceiverThread() Error handling UP socket UPF=Util WARN[2020-05-24T17:10:10+05:30] /home/free5gc/go/src/free5gc/src/upf/src/up/up_path.c:119 GtpHandler() This type[255] of GTPv1 header does not implement yet UPF=Util ERRO[2020-05-24T17:10:10+05:30] /home/free5gc/go/src/free5gc/src/upf/src/upf_init.c:210 PacketReceiverThread() Error handling UP socket UPF=Util WARN[2020-05-24T17:14:59+05:30] /home/free5gc/go/src/free5gc/src/upf/src/up/up_path.c:119 GtpHandler() This type[255] of GTPv1 header does not implement yet UPF=Util ERRO[2020-05-24T17:14:59+05:30] /home/free5gc/go/src/free5gc/src/upf/src/upf_init.c:210 PacketReceiverThread() Error handling UP socket UPF=Util WARN[2020-05-24T17:15:02+05:30] /home/free5gc/go/src/free5gc/src/upf/src/up/up_path.c:119 GtpHandler() This type[255] of GTPv1 header does not implement yet UPF=Util ERRO[2020-05-24T17:15:02+05:30] /home/free5gc/go/src/free5gc/src/upf/src/upf_init.c:210 PacketReceiverThread() Error handling UP socket UPF=Util WARN[2020-05-24T17:30:52+05:30] /home/free5gc/go/src/free5gc/src/upf/src/up/up_path.c:119 GtpHandler() This type[255] of GTPv1 header does not implement yet UPF=Util ERRO[2020-05-24T17:30:52+05:30] /home/free5gc/go/src/free5gc/src/upf/src/upf_init.c:210 PacketReceiverThread() Error handling UP socket UPF=Util WARN[2020-05-24T17:33:51+05:30] /home/free5gc/go/src/free5gc/src/upf/src/up/up_path.c:119 GtpHandler() This type[255] of GTPv1 header does not implement yet UPF=Util ERRO[2020-05-24T17:33:51+05:30] /home/free5gc/go/src/free5gc/src/upf/src/upf_init.c:210 PacketReceiverThread() Error handling UP socket UPF=Util WARN[2020-05-24T17:33:51+05:30] /home/free5gc/go/src/free5gc/src/upf/src/up/up_path.c:119 GtpHandler() This type[255] of GTPv1 header does not implement yet UPF=Util ERRO[2020-05-24T17:33:51+05:30] /home/free5gc/go/src/free5gc/src/upf/src/upf_init.c:210 PacketReceiverThread() Error handling UP socket UPF=Util WARN[2020-05-24T17:33:51+05:30] /home/free5gc/go/src/free5gc/src/upf/src/up/up_path.c:119 GtpHandler() This type[255] of GTPv1 header does not implement yet UPF=Util ERRO[2020-05-24T17:33:51+05:30] /home/free5gc/go/src/free5gc/src/upf/src/upf_init.c:210 PacketReceiverThread() Error handling UP socket UPF=Util WARN[2020-05-24T17:33:51+05:30] /home/free5gc/go/src/free5gc/src/upf/src/up/up_path.c:119 GtpHandler() This type[255] of GTPv1 header does not implement yet UPF=Util ERRO[2020-05-24T17:33:51+05:30] /home/free5gc/go/src/free5gc/src/upf/src/upf_init.c:210 PacketReceiverThread() Error handling UP socket UPF=Util WARN[2020-05-24T17:33:51+05:30] /home/free5gc/go/src/free5gc/src/upf/src/up/up_path.c:119 GtpHandler() This type[255] of GTPv1 header does not implement yet UPF=Util ERRO[2020-05-24T17:33:51+05:30] /home/free5gc/go/src/free5gc/src/upf/src/upf_init.c:210 PacketReceiverThread() Error handling UP socket UPF=Util

  • UE attach to free5gc, fail in  resynchronization process

    UE attach to free5gc, fail in resynchronization process

    I use 5G UE conntect to free5gc, but it fail in resynchronization process. I checked the source code. In funtcion HandleGenerateAuthData, UDM get SQN from MogoDB every time. In resynchronization process UDM should get SQN from UE and update it to UDM.

  • Add docker-free5gc to free5gc organization

    Add docker-free5gc to free5gc organization

    Hi,

    This project abousselmi/docker-free5gc simplifies the deployment of Free5GC using docker. Each entity has its own image/container and a docker-compose file is used to launch the whole thing :rocket: . Tell me what you think of it and if it would be ok to make a free5gc project :smile:

    Cheers,

  • Test script for kubernetes

    Test script for kubernetes

    Hi,

    I was able to deploy the v3.0.1 in a kubernetes cluster using sdnvortex/network-controller to simulate multiple network interfaces (currently with one worker node).

    NAME                                       READY   STATUS    RESTARTS   AGE
    free5gc-amf-deployment-66744dbc4f-p89z6    1/1     Running   0          64m
    free5gc-ausf-deployment-6589ddd96f-jqm5j   1/1     Running   0          62m
    free5gc-mongodb-0                          2/2     Running   0          69m
    free5gc-nrf-deployment-656b465db8-6trw7    1/1     Running   0          65m
    free5gc-nssf-deployment-5bcdf56fc-26kj4    1/1     Running   0          61m
    free5gc-pcf-deployment-759479f9bb-m45pv    1/1     Running   0          62m
    free5gc-smf-deployment-8d46888f4-q2d4n     1/1     Running   0          2m22s
    free5gc-udm-deployment-694749d586-wf4tf    1/1     Running   0          61m
    free5gc-udr-deployment-765bcf5d8f-fzz95    1/1     Running   0          7m24s
    free5gc-upf-deployment-589ffdb69f-5rhrd    1/1     Running   0          46m
    

    I think the current test script assumes that all the components are installed in the same system

    Any ideas how to modify the test script to test if the 5GC components are running properly (maybe a k8s job)? Most especially because each of the components are running in different PODs.

  • Can't pass any test, TestRegistration

    Can't pass any test, TestRegistration

    I was following the process https://www.free5gc.org/installations/stage-3-free5gc-install/ But get fail state in ./test.sh TestRegistration

    Environment (please complete the following information):

    free5GC Version: v3.0.6
    OS: Ubuntu 20.0.04
    Kernel version: 5.4.0-100-generic
    go version: go version go1.15.8 linux/amd64
    

    Error logs:

        === RUN   TestRegistration
            registration_test.go:50: 
        	        Error Trace:	registration_test.go:50
        	        Error:      	Expected nil, but got: 0x6f
        	        Test:       	TestRegistration
        --- FAIL: TestRegistration (0.00s)
        panic: runtime error: invalid memory address or nil pointer dereference [recovered]
            panic: runtime error: invalid memory address or nil pointer dereference
        [signal SIGSEGV: segmentation violation code=0x1 addr=0x0 pc=0xda2397]
        
        goroutine 169 [running]:
        testing.tRunner.func1.1(0x1545a00, 0x22d3250)
            /usr/local/go/src/testing/testing.go:1072 +0x30d
        testing.tRunner.func1(0xc000552780)
            /usr/local/go/src/testing/testing.go:1075 +0x41a
        panic(0x1545a00, 0x22d3250)
            /usr/local/go/src/runtime/panic.go:969 +0x1b9
        git.cs.nctu.edu.tw/calee/sctp.(*SCTPConn).fd(...)
            /home/noah/go/pkg/mod/git.cs.nctu.edu.tw/calee/[email protected]/sctp.go:430
        git.cs.nctu.edu.tw/calee/sctp.(*SCTPConn).SCTPWrite(0x0, 0xc0004ff200, 0x39, 0x40, 0x0, 0x0, 0x0, 0x1)
            /home/noah/go/pkg/mod/git.cs.nctu.edu.tw/calee/[email protected]/sctp_linux.go:88 +0x57
        git.cs.nctu.edu.tw/calee/sctp.(*SCTPConn).Write(...)
            /home/noah/go/pkg/mod/git.cs.nctu.edu.tw/calee/[email protected]/sctp.go:442
        test_test.TestRegistration(0xc000552780)
            /home/noah/free5gc/test/registration_test.go:59 +0x299
        testing.tRunner(0xc000552780, 0x17b3c98)
            /usr/local/go/src/testing/testing.go:1123 +0xef
        created by testing.(*T).Run
            /usr/local/go/src/testing/testing.go:1168 +0x2b3
        exit status 2
        FAIL	test	1.687s
    
  • [Bugs] NRF GET nf-instances handles optional parameters as mandatory

    [Bugs] NRF GET nf-instances handles optional parameters as mandatory

    Describe the bug

    In the NRF endpoint GET nf-instances, the optional parameters nf-type and limit are de-facto treated as mandatory.

    If the limit-Parameter is missing, a 400 Bad Request is returned. If the limit parameter is present, but thenf-type` parameter is missing, an empty result list is returned.

    To Reproduce

    Steps to reproduce the behavior:

    1. start a simple setup of free5gc
    2. request GET http://<address>:port/nnrf-nfm/v1/nf-instances
    3. request http://10.100.200.4:8000/nnrf-nfm/v1/nf-instances?limit=10

    Expected behavior

    When called without limit, the request should return all NF-instances or at least use a non-zero default limit. When called without nf-type, the request should not filter for NF type and return NFs of all types

    curl output

    As example, here is what a curl request returns for my setup. First the missing limit parameter:

    $ curl 'http://10.100.200.4:8000/nnrf-nfm/v1/nf-instances' -H 'accept: application/json'
    {"title":"Invalid Parameter","status":400,"detail":"strconv.Atoi: parsing \"\": invalid syntax"}
    

    Second: the missing nf-type-parameter:

    $ curl 'http://10.100.200.4:8000/nnrf-nfm/v1/nf-instances?limit=10' -H 'accept: application/json'
    {"nfType":"","_link":{"item":null}}
    

    In contrast to that, a working example:

    $ curl 'http://10.100.200.4:8000/nnrf-nfm/v1/nf-instances?limit=10&nf-type=AMF' -H 'accept: application/json'
    {"nfType":"AMF","_link":{"item":[{"href":"http://nrf.free5gc.org:8000/nnrf-nfm/v1/nf-instances/5cce9dfa-6dbc-489f-8c19-a76d5a07ac2a"}]}}
    

    Environment (please complete the following information):

    • free5GC Version: 3.1.1
    • OS: Arch Linux
    • Kernel version: 6.1.2-arch1-1
    • go version: go-1.14.4
    • c compiler version (Option): gcc version 12.2.0

    System architecture (Option)

    The setup is a relatively basic docker setup using docker compose. The purpose of this setup is playing around with free5gc and doing research.

    Additional context

    I took a look at the code (internal/context/management_data.go and internal/sbi/producer/nf_management.go) and it looks like the issue would be relatively easy to fix. If someone here agrees that this report is an issue, I would

    1. check if the limit is present before trying to parse it
    2. set no limit to the mongodb-request if it is not set
    3. set no filter for the mongodb-request if nf-type is absent or empty

    and make a pull-request.

  • [Bugs] UPF Cli Run Error: open Gtp5g: open link: create: file exists

    [Bugs] UPF Cli Run Error: open Gtp5g: open link: create: file exists

    We will advise people to follow the issue template set, otherwise the issue might be disregarded. free5GC mainly uses GitHub for issue tracking. Information regarding to general questions or technical support. It will be highly considered if forward to the forum. free5GC will appreciate it, if people can refer to TS and forum prior to bug reporting

    Describe the bug

    I use UERANSIM to open multiple UE threads to interact with the 5G core. The python script for opening such UE threads is like the following: os.system("nohup " + UERANSIM_build_dir + "nr-ue -c ./config/%s &" % file) Then I use UERANSIM's nr-cli to make the UE thread to interact with the 5g core: os.system(UERANSIM_build_dir +"nr-cli -e '%s' %s" % (command, ueId))

    However, when the number of UE thread is up to 50, the UPF pod crashes, throwing the following error. 2023-01-03T00:36:39Z [ERRO][UPF][Main] UPF Cli Run Error: open Gtp5g: open link: create: file exists

    Less UE threads will not lead to this error.

    To Reproduce

    Steps to reproduce the behavior:

    1. Use this helm repo to deploy the 5g core and 5g RAN on a K8s cluster: https://github.com/Orange-OpenSource/towards5gs-helm
    2. kubectl exec -it into the ue pod, and use this repository (https://github.com/tywofxd/5GLogGenerator) to generate multiple UE threads to interact with the 5g core.
    3. run command: python3 run.py --ue 50 --sec 36000
    4. UPF crashes after several minutes.

    Expected behavior

    I want the 5g core to operate normally with many UE threads interacting with it.

    Screenshots

    image

    Environment (please complete the following information):

    • free5GC Version: v3.2.0
    • OS: Ubuntu 18.04 Server
    • Kernel version: 5.4.0-131-generic
    • helm chart: https://github.com/Orange-OpenSource/towards5gs-helm
    • k8s version: v1.23.4
    • go version: [e.g. 1.10.0 linux/amd64]
    • c compiler version (Option): [e.g. gcc version 1.1.0]

    Trace File

    Configuration File

    free5gc-charts.zip

    PCAP File

    Dump the packet and provide the pcap file here.

    If not clear of what to do, this command can be used sudo tcpdump -i any -w free5gc.pcap prior to running bug reproduce. Then upload the pcap file free5gc.pcap.

    Log File

    image

    System architecture (Option)

    Please provide the draft architecture, including the scenario, use cases, installation environment(bare metal, vm, container, or k8s), etc.

    Walkthrough (Option)

    free5GC will be interested on the research or finding in brief.

    Additional context

    My repository for generating UE threads is here: https://github.com/tywofxd/5GLogGenerator

  • [Bugs] After N2 Handover, if new PDU Session Req AMF sends Initial Context Set Req

    [Bugs] After N2 Handover, if new PDU Session Req AMF sends Initial Context Set Req

    Description

    I am implementing LADN support in free5GC, but after a N2 Handover, when I try instantiate a new PDU Session for a new available LADN, it takes some extra time due to the AMF sending an Initial Context Setup Request. The request is sent from the N1N2Transfer Procedure because the flag "SentInitialContextSetupRequest" is set to false inside the UE AMF Context. Would it be sufficient to set this parameter to true after that the HO Procedure is completed? Or am I missing something? I guess the InitialContextSetupReq is not necessary after a N2 HO Procedure, since the t-gNB is already aware of the new UE Context...

    To Reproduce

    Steps to reproduce the behavior:

    1. Execute a N2 Handover
    2. Request a new PDU Session from the UE
  • Question to your Security Policy

    Question to your Security Policy

    Hello free5GC Team,

    we have found a security vulnerability in free5GC and would like to report it to you. Which communication channel do you prefer to be informed about it?

    Best regards Tobias Funke, Radix Security

  • [Bugs] AMF doesnt reroute the registration to another amf  when it cant handle the NSSAI

    [Bugs] AMF doesnt reroute the registration to another amf when it cant handle the NSSAI

    the amf doesnt reroute the registration to another amf when it cant handle the NSSAI , and the amf doesn't check the NSSAi parameter rather it accept everything and authenticate the UE, the normal behavior is : During Registration, the initial AMF using the information, e.g. Requested NSAAI and subscribed NSSAI received from the device and UDM respectively and as well as inquiry from NSSF (Network Slice Selection Function) is able to check whether it can handle the registration process or it should re-route the registration request to another AMF (target AMF) for the further action. The target AMF then prepares the allowed and configured NSAAI and delivers it to the device via NAS-5GMM Registration Accept message.

Build - The axelar-core app based on the Cosmos SDK is the main application of the axelar network

⚠️ ⚠️ ⚠️ THIS IS A WORK IN PROGRESS ⚠️ ⚠️ ⚠️ axelar-core The axelar-core app bas

Feb 15, 2022
Apache Traffic Control is an Open Source implementation of a Content Delivery Network

Apache Traffic Control Apache Traffic Control is an Open Source implementation of a Content Delivery Network. Documentation Intro CDN Basics Traffic C

Jan 6, 2023
Openp2p - an open source, free, and lightweight P2P sharing network
Openp2p - an open source, free, and lightweight P2P sharing network

It is an open source, free, and lightweight P2P sharing network. As long as any device joins in, you can access them anywhere

Dec 31, 2022
Diameter stack and Base Protocol (RFC 6733) for the Go programming language

Diameter Base Protocol Package go-diameter is an implementation of the Diameter Base Protocol RFC 6733 and a stack for the Go programming language. St

Dec 28, 2022
A rule based proxy For Mac base on Clash.
A rule based proxy For Mac base on Clash.

ClashX A rule based proxy For Mac base on Clash. ClashX 旨在提供一个简单轻量化的代理客户端,如果需要更多的定制化,可以考虑使用 CFW Mac 版 Features HTTP/HTTPS and SOCKS protocol Surge lik

Dec 26, 2022
go stomp server base on net/http

stompserver go stomp server base on "net/http" base on "net/http" and "golang.org/x/net/websocket" so use one port, you can be WebServer or StompServe

Sep 22, 2022
A base library defines interfaces and modules of aBFT Lachesis consensus protocol

Lachesis base A base library defines interfaces and modules of aBFT Lachesis consensus protocol. Part of galaxy' s Consensus-as-a-Service for distribu

Oct 25, 2021
Gogrok is a self hosted, easy to use alternative to ngrok. It uses SSH as a base protocol, using channels and existing functionality to tunnel requests to an endpoint.

gogrok A simple, easy to use ngrok alternative (self hosted!) The server and client can also be easily embedded into your applications, see the 'serve

Dec 3, 2022
Ebpfmanager - A golang ebpf libary base on cilium/ebpf and datadog/ebpf
Ebpfmanager - A golang ebpf libary base on cilium/ebpf and datadog/ebpf

介绍 ebpfmanager参照datadog/ebpf/manager包的思想,基于cilium/ebpf实现的ebpf类库封装。 相比cilium/ebpf

Dec 29, 2022
A base gui tool for xray/v2ray/hysteria/trojan-go without system proxy

A base gui tool for xray/v2ray/hysteria/trojan-go without system proxy

Dec 8, 2022
Package socket provides a low-level network connection type which integrates with Go's runtime network poller to provide asynchronous I/O and deadline support. MIT Licensed.

socket Package socket provides a low-level network connection type which integrates with Go's runtime network poller to provide asynchronous I/O and d

Dec 14, 2022
Optimize Windows's network/NIC driver settings for NewTek's NDI(Network-Device-Interface).

windows-ndi-optimizer[WIP] Optimize Windows's network/NIC driver settings for NewTek's NDI(Network-Device-Interface). How it works This is batchfile d

Apr 15, 2022
A simple network analyzer that capture http network traffic
A simple network analyzer that capture http network traffic

httpcap A simple network analyzer that captures http network traffic. support Windows/MacOS/Linux/OpenWrt(x64) https only capture clienthello colorful

Oct 25, 2022
Zero Trust Network Communication Sentinel provides peer-to-peer, multi-protocol, automatic networking, cross-CDN and other features for network communication.
Zero Trust Network Communication Sentinel provides peer-to-peer, multi-protocol, automatic networking, cross-CDN and other features for network communication.

Thank you for your interest in ZASentinel ZASentinel helps organizations improve information security by providing a better and simpler way to protect

Nov 1, 2022
Yet another SIP003 plugin for shadowsocks, based on Xray-core

Yet another SIP003 plugin for shadowsocks, based on Xray-core Build go build Usage See command line args for advanced usages.

Jan 8, 2023
An opinionated clean fork of v2fly/v2ray-core

v2ray-go An opinionated fork of v2fly/v2ray-core. Additional Features ?? Add flag -suppressTimestamps to suppress timestamps in logs ?? Refine systemd

Nov 21, 2022
Baseledger core consensus for running validator, full and seed nodes

baseledger-core Baseledger core consensus client for running a validator, full or seed node. ⚠️ WARNING: this code has not been audited and is not rea

Jan 13, 2022
Reference implementation of the PLAN Data Model and core components

PLAN is a free and open platform for groups to securely communicate, collaborate, and coordinate projects and activities.

Nov 2, 2021
Courier Order Provider is a service that receives signals from core server in order to emit this orders to courier groups.

Courier Order Provider Courier Order Provider is a service that receives signals(messages) from core server in order to emit this orders to courier gr

Nov 4, 2021