This commit is contained in:
snltty
2026-04-10 16:39:20 +08:00
parent a1acc490d6
commit b14bf7b45a
25 changed files with 49 additions and 42 deletions
+8 -8
View File
@@ -254,25 +254,25 @@ jobs:
asset_path: ./public/publish-zip/linker-osx-arm64.zip
asset_name: linker-osx-arm64.zip
asset_content_type: application/zip
- name: upload-any-oss
id: upload-any-oss
- name: upload-anywhere-oss
id: upload-anywhere-oss
uses: tvrcgo/oss-action@v0.1.1
with:
region: oss-cn-shenzhen
key-id: ${{ secrets.ALIYUN_OSS_ID }}
key-secret: ${{ secrets.ALIYUN_OSS_SECRET }}
bucket: ide-qbcode
asset-path: ./public/publish-zip/linker-any.zip
target-path: /downloads/linker/v1.9.98/linker-any.zip
- name: upload-any
id: upload-any
asset-path: ./public/publish-zip/linker-anywhere.zip
target-path: /downloads/linker/v1.9.98/linker-anywhere.zip
- name: upload-anywhere
id: upload-anywhere
uses: actions/upload-release-asset@master
env:
GITHUB_TOKEN: ${{ secrets.ACTIONS_TOKEN }}
with:
upload_url: ${{ steps.create_release.outputs.upload_url }}
asset_path: ./public/publish-zip/linker-any.zip
asset_name: linker-any.zip
asset_path: ./public/publish-zip/linker-anywhere.zip
asset_name: linker-anywhere.zip
asset_content_type: application/zip
- name: upload-version-oss
id: upload-version-oss
+8 -8
View File
@@ -88,29 +88,29 @@ function writeUpload(data, tagName) {
};
}
data.jobs.build.steps.push({
name: `upload-any-oss`,
id: `upload-any-oss`,
name: `upload-anywhere-oss`,
id: `upload-anywhere-oss`,
uses: 'tvrcgo/oss-action@v0.1.1',
with: {
'region': 'oss-cn-shenzhen',
'key-id': '${{ secrets.ALIYUN_OSS_ID }}',
'key-secret': '${{ secrets.ALIYUN_OSS_SECRET }}',
'bucket': 'ide-qbcode',
'asset-path': `./public/publish-zip/linker-any.zip`,
'target-path': `/downloads/linker/${tagName}/linker-any.zip`
'asset-path': `./public/publish-zip/linker-anywhere.zip`,
'target-path': `/downloads/linker/${tagName}/linker-anywhere.zip`
}
});
data.jobs.build.steps.push({
name: `upload-any`,
id: `upload-any`,
name: `upload-anywhere`,
id: `upload-anywhere`,
uses: 'actions/upload-release-asset@master',
env: {
'GITHUB_TOKEN': '${{ secrets.ACTIONS_TOKEN }}'
},
with: {
'upload_url': '${{ steps.create_release.outputs.upload_url }}',
'asset_path': `./public/publish-zip/linker-any.zip`,
'asset_name': `linker-any.zip`,
'asset_path': `./public/publish-zip/linker-anywhere.zip`,
'asset_name': `linker-anywhere.zip`,
'asset_content_type': 'application/zip'
}
});
+5 -5
View File
@@ -22,7 +22,7 @@ echo F|xcopy "public\\extends\\any\\web\\*" "src\\linker.app\\public\\web\\*" /
dotnet publish ./src/linker.app -c:Release -f:net8.0-android /p:AndroidUseApkSigner=true /p:AndroidPackageFormat=apk /p:AndroidKeyStore=true /p:AndroidSigningKeyStore=linker.jks /p:AndroidSigningStorePass=linker /p:AndroidSigningKeyAlias=linker /p:AndroidSigningKeyPass=linker /p:AndroidSdkDirectory=%sdkpath%
echo F|xcopy "src\\linker.app\\bin\\Release\\net8.0-android\\publish\\com.snltty.linker.app-Signed.apk" "public\\publish-zip\\linker.apk" /s /f /h /y
for %%r in (win-x86,win-x64,win-arm64) do (
for %%r in (win-x86,win-x64,win-arm64,anywhere) do (
echo F|xcopy "src\\linker.tray.win\\dist\\*" "public\\extends\\%%r\\linker-%%r\\*" /s /f /h /y
echo F|xcopy "src\\linker.route.win\\dist\\*" "public\\extends\\%%r\\linker-%%r\\*" /s /f /h /y
echo F|xcopy "src\\linker\\msquic.dll" "public\\extends\\%%r\\linker-%%r\\msquic.dll" /s /f /h /y
@@ -39,11 +39,11 @@ for %%r in (win-x86,win-x64,win-arm64,linux-x64,linux-arm,linux-arm64,linux-musl
dotnet publish src/linker -c release -f net8.0 -o public/publish/%%r/linker-%%r -r %%r -p:PublishSingleFile=true --self-contained true -p:TrimMode=partial -p:TieredPGO=true -p:DebugType=full -p:EventSourceSupport=false -p:DebugSymbols=true -p:EnableCompressionInSingleFile=true -p:DebuggerSupport=false -p:EnableUnsafeBinaryFormatterSerialization=false -p:EnableUnsafeUTF7Encoding=false -p:HttpActivityPropagationSupport=false -p:InvariantGlobalization=true -p:MetadataUpdaterSupport=false -p:UseSystemResourceKeys=true -p:MetricsSupport=false -p:StackTraceSupport=false -p:XmlResolverIsNetworkingEnabledByDefault=false
echo F|xcopy "public\\extends\\%%r\\linker-%%r\\*" "public\\publish\\%%r\\linker-%%r\\*" /s /f /h /y
echo F|xcopy "public\\extends\\any\\*" "public\\publish\\%%r\\linker-%%r\\*" /s /f /h /y
7z a -tzip ./public/publish-zip/linker-%%r.zip ./public/publish/%%r/*
)
dotnet publish src/linker -c release -f net8.0 -o public/publish/any/linker-any
echo F|xcopy "public\\extends\\any\\*" "public\\publish\\any\\linker-any\\*" /s /f /h /y
7z a -tzip ./public/publish-zip/linker-any.zip ./public/publish/any/*
dotnet publish src/linker -c release -f net8.0 -o public/publish/anywhere/linker-anywhere -p:PublishSingleFile=false --self-contained false -p:TrimMode=partial -p:TieredPGO=true -p:DebugType=full -p:EventSourceSupport=false -p:DebugSymbols=true -p:EnableCompressionInSingleFile=true -p:DebuggerSupport=false -p:EnableUnsafeBinaryFormatterSerialization=false -p:EnableUnsafeUTF7Encoding=false -p:HttpActivityPropagationSupport=false -p:InvariantGlobalization=true -p:MetadataUpdaterSupport=false -p:UseSystemResourceKeys=true -p:MetricsSupport=false -p:StackTraceSupport=false -p:XmlResolverIsNetworkingEnabledByDefault=false
echo F|xcopy "public\\extends\\anywhere\\linker-anywhere\\*" "public\\publish\\anywhere\\linker-anywhere\\*" /s /f /h /y
echo F|xcopy "public\\extends\\any\\*" "public\\publish\\anywhere\\linker-anywhere\\*" /s /f /h /y
7z a -tzip ./public/publish-zip/linker-anywhere.zip ./public/publish/anywhere/*
+1 -1
View File
@@ -1,5 +1,5 @@
v1.9.98
2026-04-10 09:28:55
2026-04-10 16:39:19
1. 一些累计更新,一些BUG修复
2. #92 松开打洞loading限制,允许选择中继节点
3. #89 windows下利用任务计划进行进程守护,定时检查服务
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
+1 -1
View File
@@ -1 +1 @@
<!doctype html><html lang=""><head><meta charset="utf-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width,initial-scale=1"><link rel="icon" href="favicon.ico"><title>linker.web</title><link rel="stylesheet" href="https://unpkg.com/leaflet@1.9.4/dist/leaflet.css" integrity="sha256-p4NxAoJBhIIN+hmNHrzRCf9tD/miZyoHS5obTRR9BMY=" crossorigin=""/><script src="https://unpkg.com/leaflet@1.9.4/dist/leaflet.js" integrity="sha256-20nQCchB9co0qIjJZRGuk2/Z9VM+kNiyxNV1lvTlZBo=" crossorigin=""></script><script defer="defer" src="js/chunk-vendors.b8208d66.js"></script><script defer="defer" src="js/app.e1676358.js"></script><link href="css/chunk-vendors.e3db65e0.css" rel="stylesheet"><link href="css/app.2b2e46a1.css" rel="stylesheet"></head><body><noscript><strong>We're sorry but linker.web doesn't work properly without JavaScript enabled. Please enable it to continue.</strong></noscript><div id="app"></div></body></html>
<!doctype html><html lang=""><head><meta charset="utf-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width,initial-scale=1"><link rel="icon" href="favicon.ico"><title>linker.web</title><link rel="stylesheet" href="https://unpkg.com/leaflet@1.9.4/dist/leaflet.css" integrity="sha256-p4NxAoJBhIIN+hmNHrzRCf9tD/miZyoHS5obTRR9BMY=" crossorigin=""/><script src="https://unpkg.com/leaflet@1.9.4/dist/leaflet.js" integrity="sha256-20nQCchB9co0qIjJZRGuk2/Z9VM+kNiyxNV1lvTlZBo=" crossorigin=""></script><script defer="defer" src="js/chunk-vendors.b8208d66.js"></script><script defer="defer" src="js/app.0983d482.js"></script><link href="css/chunk-vendors.e3db65e0.css" rel="stylesheet"><link href="css/app.00e91c71.css" rel="stylesheet"></head><body><noscript><strong>We're sorry but linker.web doesn't work properly without JavaScript enabled. Please enable it to continue.</strong></noscript><div id="app"></div></body></html>
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -5,8 +5,6 @@ slug: /p2p/hole
# 3.0、打洞
## 1、打洞协议调整
:::tip[说明]
+2 -2
View File
@@ -9,7 +9,7 @@ import { themes as prismThemes } from 'prism-react-renderer';
/** @type {import('@docusaurus/types').Config} */
const config = {
title: 'linker-doc',
tagline: 'linker、海内皆隔壁,天涯若比邻。',
tagline: '自由哒。',
favicon: 'img/favicon.ico',
// Set the production url of your site here
@@ -85,7 +85,7 @@ const config = {
},
announcementBar: {
id: 'support_us',
content: '<span style="font-size:14px;color:#f7033a;">使用官方信标服务器时,在<a target="_blank" href="https://ifdian.net/a/snltty">【🔋爱发电】</a>充电后的订单号可在[服务器][中继]部分导入,以解锁相应中继带宽,自建不需要</span>',
content: '<span style="font-size:14px;color:#f7033a;">使用官方信标服务器时,在<a target="_blank" href="https://ifdian.net/a/snltty">【🔋爱发电】</a>充电后的订单号可在[服务器][中继]部分导入,以解锁>3mbps的中继带宽。</span>',
backgroundColor: '#f5f5f5',
textColor: '#ff0000',
isCloseable: false,
@@ -4,29 +4,29 @@ import styles from './styles.module.css';
const FeatureList = [
{
title: '跨平台、高性能、可视化',
title: '打洞+中继+内网穿透',
Svg: require('@site/static/img/undraw_docusaurus_mountain.svg').default,
description: (
<>
跨平台高性能web管理SSL加密
牛逼
</>
),
},
{
title: '打洞、中继、内网穿透',
title: '可视化UI管理',
Svg: require('@site/static/img/undraw_docusaurus_tree.svg').default,
description: (
<>
TCP+UDP打洞服务器中继服务器穿透
牛逼
</>
),
},
{
title: '异地组网',
title: '虚拟网卡+端口转发+socks5/http代理',
Svg: require('@site/static/img/undraw_docusaurus_react.svg').default,
description: (
<>
虚拟网卡组网/网对网网段映射
牛逼
</>
),
},
+1 -1
View File
@@ -48,7 +48,7 @@ export default function Home() {
return (
<Layout
title={`${siteConfig.title}`}
description="linker、海内皆隔壁,天涯若比邻。">
description="自由哒。">
<HomepageHeader />
<main>
<HomepageFeatures />
@@ -309,7 +309,6 @@ namespace linker.messenger.store.file
{
return Convert.ToBase64String(crypto.Encode(new ShareGroupInfo
{
Server = config.Data.Client.Server.Host,
Id = config.Data.Client.Group.Id,
Pwd = config.Data.Client.Group.Password
}.ToJson().ToBytes()));
@@ -330,9 +329,10 @@ namespace linker.messenger.store.file
try
{
ShareGroupInfo info = crypto.Decode(Convert.FromBase64String(param.Content)).GetString().DeJson<ShareGroupInfo>();
config.Data.Client.Server.Host = info.Server;
config.Data.Client.Group.Id = info.Id;
config.Data.Client.Group.Password = info.Pwd;
var list = config.Data.Client.Groups.ToList();
list.Insert(0, new SignInClientGroupInfo { Id = info.Id, Name = info.Id, Password = info.Pwd });
config.Data.Client.Groups = list.ToArray();
config.Data.Update();
signInClientTransfer.ReSignIn();
@@ -343,7 +343,7 @@ namespace linker.messenger.store.file
}
finally
{
crypto.Dispose();
crypto.Dispose();
}
return false;
@@ -189,6 +189,7 @@ namespace linker.tun.device
string str = CommandHelper.Linux(string.Empty, new string[] {
$"sysctl -w net.ipv4.ip_forward=1",
$"sysctl -w net.ipv4.conf.{Name}.forwarding=1",
$"iptables -A FORWARD -i {interfaceLinux} -o {Name} -j ACCEPT",
$"iptables -A FORWARD -i {Name} -j ACCEPT",
+1 -3
View File
@@ -14,7 +14,6 @@ namespace linker
{
static async Task Main(string[] args)
{
ServicePointManager.CheckCertificateRevocationList = false;
#if DEBUG
#else
@@ -39,8 +38,7 @@ namespace linker
//ThreadPool.SetMinThreads(1024, 1024);
//ThreadPool.SetMaxThreads(65535, 65535);
string serviceDirectory = Path.GetDirectoryName(Process.GetCurrentProcess().MainModule.FileName);
Directory.SetCurrentDirectory(serviceDirectory);
Directory.SetCurrentDirectory(AppContext.BaseDirectory);
//windows服务运行
if (Environment.UserInteractive == false && OperatingSystem.IsWindows())
Binary file not shown.
Binary file not shown.
Binary file not shown.