<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel>
    <title>教程 on KANIKIG BLOG</title>
    <link>https://blog.kanikig.xyz/tags/%E6%95%99%E7%A8%8B/</link>
    <description>Recent content in 教程 on KANIKIG BLOG</description>
    <generator>Hugo -- gohugo.io</generator>
    <language>zh-cn</language>
    <lastBuildDate>Sat, 02 Jul 2022 15:06:51 +0800</lastBuildDate><atom:link href="https://blog.kanikig.xyz/tags/%E6%95%99%E7%A8%8B/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Hugo添加不蒜子Busuanzi站点访问量与阅读量统计</title>
      <link>https://blog.kanikig.xyz/hugo-busuanzi/</link>
      <pubDate>Sat, 02 Jul 2022 15:06:51 +0800</pubDate>
      
      <guid>https://blog.kanikig.xyz/hugo-busuanzi/</guid>
      <description>对任意hugo主题均适用，只需要改4个地方，以papermod主题为例 head 找到主题文件夹内的head.html，例如papermod的路径为t</description>
      <content:encoded><![CDATA[<p>对任意hugo主题均适用，只需要改4个地方，以<code>papermod</code>主题为例</p>
<h2 id="head">head</h2>
<p>找到主题文件夹内的<code>head.html</code>，例如<code>papermod</code>的路径为<code>themes/PaperModX/layouts/partials/head.html</code></p>
<p>添加如下代码</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-html" data-lang="html"><span class="line"><span class="cl"><span class="c">&lt;!-- busuanzi --&gt;</span>
</span></span><span class="line"><span class="cl">{{- if .Site.Params.busuanzi.enable -}}
</span></span><span class="line"><span class="cl">  <span class="p">&lt;</span><span class="nt">script</span> <span class="na">async</span> <span class="na">src</span><span class="o">=</span><span class="s">&#34;//busuanzi.ibruce.info/busuanzi/2.3/busuanzi.pure.mini.js&#34;</span><span class="p">&gt;&lt;/</span><span class="nt">script</span><span class="p">&gt;</span>
</span></span><span class="line"><span class="cl">  <span class="p">&lt;</span><span class="nt">meta</span> <span class="na">name</span><span class="o">=</span><span class="s">&#34;referrer&#34;</span> <span class="na">content</span><span class="o">=</span><span class="s">&#34;no-referrer-when-downgrade&#34;</span><span class="p">&gt;</span>
</span></span><span class="line"><span class="cl">{{- end -}}
</span></span></code></pre></div><p>可以添加在<code>google-site-verification</code>那块后面，<code>Styles</code>前面，方便寻找</p>
<p>
  <img loading="lazy" src="https://pic.kanikig.xyz/images/2022/07/02/iShot2022-07-02-15.43.42.png" alt="iShot2022-07-02 15.43.42"  /></p>
<h2 id="footer">footer</h2>
<p>在站点底部显示总访问量与访客数，一般和<code>head</code>同目录，添加如下代码，注意添加在<code>&lt;footer&gt;</code>代码块里</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-html" data-lang="html"><span class="line"><span class="cl"><span class="c">&lt;!-- busuanzi --&gt;</span>
</span></span><span class="line"><span class="cl">{{ if .Site.Params.busuanzi.enable -}}
</span></span><span class="line"><span class="cl"><span class="p">&lt;</span><span class="nt">div</span> <span class="na">class</span><span class="o">=</span><span class="s">&#34;busuanzi-footer&#34;</span><span class="p">&gt;</span>
</span></span><span class="line"><span class="cl">  <span class="p">&lt;</span><span class="nt">span</span> <span class="na">id</span><span class="o">=</span><span class="s">&#34;busuanzi_container_site_pv&#34;</span><span class="p">&gt;</span>
</span></span><span class="line"><span class="cl">    本站总访问量<span class="p">&lt;</span><span class="nt">span</span> <span class="na">id</span><span class="o">=</span><span class="s">&#34;busuanzi_value_site_pv&#34;</span><span class="p">&gt;&lt;/</span><span class="nt">span</span><span class="p">&gt;</span>次
</span></span><span class="line"><span class="cl">  <span class="p">&lt;/</span><span class="nt">span</span><span class="p">&gt;</span>
</span></span><span class="line"><span class="cl">  <span class="p">&lt;</span><span class="nt">span</span> <span class="na">id</span><span class="o">=</span><span class="s">&#34;busuanzi_container_site_uv&#34;</span><span class="p">&gt;</span>
</span></span><span class="line"><span class="cl">    本站访客数<span class="p">&lt;</span><span class="nt">span</span> <span class="na">id</span><span class="o">=</span><span class="s">&#34;busuanzi_value_site_uv&#34;</span><span class="p">&gt;&lt;/</span><span class="nt">span</span><span class="p">&gt;</span>人次
</span></span><span class="line"><span class="cl">  <span class="p">&lt;/</span><span class="nt">span</span><span class="p">&gt;</span>
</span></span><span class="line"><span class="cl"><span class="p">&lt;/</span><span class="nt">div</span><span class="p">&gt;</span>
</span></span><span class="line"><span class="cl">{{- end -}}
</span></span></code></pre></div><p>
  <img loading="lazy" src="https://pic.kanikig.xyz/images/2022/07/02/iShot2022-07-02-15.43.22.png" alt="iShot2022-07-02 15.43.22"  /></p>
<h2 id="single">single</h2>
<p>用于显示每篇文章阅读量，有的主题是和上面两个同目录，有的不是，自己搜索下，<code>papermod</code>是在<code>themes/PaperModX/layouts/_default/single.html</code>，一样注意加在<code>&lt;header&gt;</code>代码块内</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-html" data-lang="html"><span class="line"><span class="cl"><span class="c">&lt;!-- busuanzi --&gt;</span>
</span></span><span class="line"><span class="cl">{{ if .Site.Params.busuanzi.enable -}}
</span></span><span class="line"><span class="cl">  <span class="p">&lt;</span><span class="nt">span</span> <span class="na">id</span><span class="o">=</span><span class="s">&#34;busuanzi_container_page_pv&#34;</span><span class="p">&gt;</span>本文阅读量<span class="p">&lt;</span><span class="nt">span</span> <span class="na">id</span><span class="o">=</span><span class="s">&#34;busuanzi_value_page_pv&#34;</span><span class="p">&gt;&lt;/</span><span class="nt">span</span><span class="p">&gt;</span>次<span class="p">&lt;/</span><span class="nt">span</span><span class="p">&gt;</span>
</span></span><span class="line"><span class="cl">{{- end }}
</span></span></code></pre></div><p>这里要根据不同主题自己改动，如<code>papermod</code>是在<code>post-meta</code>这块，为了套用它的颜色和格式在外面套了<code>&lt;div&gt;</code>，加了个分隔符</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-html" data-lang="html"><span class="line"><span class="cl"><span class="c">&lt;!-- busuanzi --&gt;</span>
</span></span><span class="line"><span class="cl">{{ if .Site.Params.busuanzi.enable -}}
</span></span><span class="line"><span class="cl"><span class="p">&lt;</span><span class="nt">div</span>  <span class="na">class</span><span class="o">=</span><span class="s">&#34;meta-item&#34;</span><span class="p">&gt;</span><span class="err">&amp;</span>nbsp·<span class="err">&amp;</span>nbsp
</span></span><span class="line"><span class="cl">  <span class="p">&lt;</span><span class="nt">span</span> <span class="na">id</span><span class="o">=</span><span class="s">&#34;busuanzi_container_page_pv&#34;</span><span class="p">&gt;</span>本文阅读量<span class="p">&lt;</span><span class="nt">span</span> <span class="na">id</span><span class="o">=</span><span class="s">&#34;busuanzi_value_page_pv&#34;</span><span class="p">&gt;&lt;/</span><span class="nt">span</span><span class="p">&gt;</span>次<span class="p">&lt;/</span><span class="nt">span</span><span class="p">&gt;</span>
</span></span><span class="line"><span class="cl"><span class="p">&lt;/</span><span class="nt">div</span><span class="p">&gt;</span>
</span></span><span class="line"><span class="cl">{{- end }}
</span></span></code></pre></div><p>
  <img loading="lazy" src="https://pic.kanikig.xyz/images/2022/07/02/iShot2022-07-02-15.44.16.png" alt="iShot2022-07-02 15.44.16"  /></p>
<h2 id="config">config</h2>
<p>回到根目录改<code>config.yml</code>，在<code>params</code>里加上两行</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-yaml" data-lang="yaml"><span class="line"><span class="cl"><span class="nt">params</span><span class="p">:</span><span class="w">  
</span></span></span><span class="line"><span class="cl"><span class="w">    </span><span class="nt">busuanzi</span><span class="p">:</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w">        </span><span class="nt">enable</span><span class="p">:</span><span class="w"> </span><span class="kc">true</span><span class="w">
</span></span></span></code></pre></div><p>不想显示统计改成false就行了</p>
<p>如果是<code>toml</code>的配置文件自己按格式改就行，属性都一样</p>
<h2 id="效果">效果</h2>
<p>全站</p>
<p>
  <img loading="lazy" src="https://pic.kanikig.xyz/images/2022/07/02/iShot2022-07-02-15.53.57.png" alt="iShot2022-07-02 15.53.57"  /></p>
<p>单页</p>
<p>
  <img loading="lazy" src="https://pic.kanikig.xyz/images/2022/07/02/iShot2022-07-02-15.54.52.png" alt="iShot2022-07-02 15.54.52"  /></p>
<p>效果如上</p>
]]></content:encoded>
    </item>
    
    <item>
      <title>懒人技巧-模型训练完成时发通知到手机</title>
      <link>https://blog.kanikig.xyz/%E6%87%92%E4%BA%BA%E6%8A%80%E5%B7%A7-%E6%A8%A1%E5%9E%8B%E8%AE%AD%E7%BB%83%E5%AE%8C%E6%88%90%E6%97%B6%E5%8F%91%E9%80%9A%E7%9F%A5%E5%88%B0%E6%89%8B%E6%9C%BA/</link>
      <pubDate>Mon, 04 Apr 2022 14:22:56 +0000</pubDate>
      
      <guid>https://blog.kanikig.xyz/%E6%87%92%E4%BA%BA%E6%8A%80%E5%B7%A7-%E6%A8%A1%E5%9E%8B%E8%AE%AD%E7%BB%83%E5%AE%8C%E6%88%90%E6%97%B6%E5%8F%91%E9%80%9A%E7%9F%A5%E5%88%B0%E6%89%8B%E6%9C%BA/</guid>
      <description>前言 现在进行大型数值计算，或训练机器学习模型的时间可以长达数十小时甚至数天。我们自然是希望跑完的时候能够收到通知，这样就不用反复上去查看了。</description>
      <content:encoded><![CDATA[<h2 id="前言">前言</h2>
<p>现在进行大型数值计算，或训练机器学习模型的时间可以长达数十小时甚至数天。我们自然是希望跑完的时候能够收到通知，这样就不用反复上去查看了。</p>
<p>查了下网上居然相关教程非常少，本文提供<code>bark</code>和<code>wxpusher</code>两个免费推送服务的使用方法，实现脚本跑完时自动发通知到手机或微信。</p>
<h2 id="bark">bark</h2>
<p><a href="https://github.com/Finb/Bark">bark</a>是一款开源免费的推送服务，仅支持<code>ios</code>。</p>
<h3 id="下载安装">下载安装</h3>
<p>
  <img loading="lazy" src="https://pic.kanikig.xyz/images/2022/04/04/iShot2022-04-04-15.14.24.png" alt="iShot2022-04-04 15.14.24"  /></p>
<p>进入app后复制如上图的链接即可</p>
<h3 id="python调用">python调用</h3>
<p>首先需要requests包</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-python" data-lang="python"><span class="line"><span class="cl"><span class="kn">import</span> <span class="nn">requests</span>
</span></span></code></pre></div><p>在模型训练的代码块后面加上这行</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-python" data-lang="python"><span class="line"><span class="cl"><span class="n">ret</span> <span class="o">=</span> <span class="n">requests</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s1">&#39;https://api.day.app/8BZtwxVav***********/报警滴滴滴/测试消息&#39;</span><span class="p">)</span>
</span></span></code></pre></div><p>上面链接换成你自己的，内容可以自己修改。</p>
<p>程序运行到这行就会发送通知到你的手机了。</p>
<h2 id="wxpusher">wxpusher</h2>
<p>如果是安卓手机，可以用<a href="https://wxpusher.zjiecode.com/admin/login">wxpusher</a>推送消息到微信，目前完全免费。类似的比较有名的server酱现在每天仅提供5次免费推送，不建议使用。</p>
<h3 id="创建应用">创建应用</h3>
<p>微信扫码自动注册，很方便。进去后创建应用，只要填必填项就可以，创建完成后会给你一个appToken，务必保存好。格式形如</p>
<pre tabindex="0"><code>AT_yn7Xsvz**********
</code></pre><p>应用创建完成后会显示一个二维码，一样用微信扫一下，你与应用就关联上了。然后点击左侧用户列表，复制你的UID</p>
<p>
  <img loading="lazy" src="https://pic.kanikig.xyz/images/2022/04/04/iShot2022-04-04-14.57.23.png" alt="iShot2022-04-04 14.57.23"  /></p>
<p>格式形如</p>
<pre tabindex="0"><code>UID_VO8eFt***********
</code></pre><h3 id="python调用-1">python调用</h3>
<p>相比于上面的<code>bark</code>，微信接口有一些限制，需要用<code>json</code>格式传输。</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-python" data-lang="python"><span class="line"><span class="cl"><span class="kn">import</span> <span class="nn">requests</span>
</span></span><span class="line"><span class="cl"><span class="kn">import</span> <span class="nn">json</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># wxpusher</span>
</span></span><span class="line"><span class="cl"><span class="n">headers</span> <span class="o">=</span> <span class="p">{</span><span class="s1">&#39;content-type&#39;</span><span class="p">:</span> <span class="s2">&#34;application/json&#34;</span><span class="p">}</span>
</span></span><span class="line"><span class="cl"><span class="n">body</span> <span class="o">=</span> <span class="p">{</span>
</span></span><span class="line"><span class="cl">  <span class="s2">&#34;appToken&#34;</span><span class="p">:</span><span class="s2">&#34;AT_yn7Xsvz**********&#34;</span><span class="p">,</span>
</span></span><span class="line"><span class="cl">  <span class="s2">&#34;content&#34;</span><span class="p">:</span><span class="s2">&#34;这是一条测试消息&#34;</span><span class="p">,</span>
</span></span><span class="line"><span class="cl">  <span class="s2">&#34;summary&#34;</span><span class="p">:</span><span class="s2">&#34;报警滴滴滴&#34;</span><span class="p">,</span>
</span></span><span class="line"><span class="cl">  <span class="s2">&#34;contentType&#34;</span><span class="p">:</span><span class="mi">1</span><span class="p">,</span>
</span></span><span class="line"><span class="cl">  <span class="s2">&#34;topicIds&#34;</span><span class="p">:[],</span>
</span></span><span class="line"><span class="cl">  <span class="s2">&#34;uids&#34;</span><span class="p">:[</span><span class="s2">&#34;UID_VO8eFt***********&#34;</span><span class="p">]</span>
</span></span><span class="line"><span class="cl"><span class="p">}</span>
</span></span></code></pre></div><p>把<code>appToken</code>和<code>uids</code>替换成你的就可以了。</p>
<p>在模型训练的代码块后面加上</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-python" data-lang="python"><span class="line"><span class="cl"><span class="n">ret</span> <span class="o">=</span> <span class="n">requests</span><span class="o">.</span><span class="n">post</span><span class="p">(</span><span class="s1">&#39;http://wxpusher.zjiecode.com/api/send/message&#39;</span><span class="p">,</span> <span class="n">data</span><span class="o">=</span><span class="n">json</span><span class="o">.</span><span class="n">dumps</span><span class="p">(</span><span class="n">body</span><span class="p">),</span> <span class="n">headers</span><span class="o">=</span><span class="n">headers</span><span class="p">)</span>
</span></span></code></pre></div><p>这样跑完的时候就会<code>post</code>请求到api，即时发送通知到你的微信了。</p>
<h2 id="最终效果">最终效果</h2>
<p>非常快，基本上一执行就立刻接到通知了。</p>
<p>
  <img loading="lazy" src="https://pic.kanikig.xyz/images/2022/04/04/IMG_1722.jpg" alt="IMG_1722"  /></p>
<p>唯一美中不足的就是<code>wxpusher</code>受微信官方一些限制，通知没法直接显示内容，需要点进去才能查看。</p>
<h2 id="进阶">进阶</h2>
<ol>
<li>不仅适用于模型训练，可以用于任何长时间运行的程序</li>
<li>可以开发更多用法，例如程序运行时抛出异常，发通知。</li>
<li>本文仅给出python示例，如果是matlab可以<a href="https://ww2.mathworks.cn/help/matlab/ref/matlab.net.http.requestmessage-class.html">参考这里</a>，其他脚本语言也可以，只要能发送http请求。</li>
</ol>
]]></content:encoded>
    </item>
    
    <item>
      <title>AWS Wavelength 全网最简单开机教程-只需3步</title>
      <link>https://blog.kanikig.xyz/AWS-Wavelength-%E5%85%A8%E7%BD%91%E6%9C%80%E7%AE%80%E5%8D%95%E5%BC%80%E6%9C%BA%E6%95%99%E7%A8%8B-%E5%8F%AA%E9%9C%803%E6%AD%A5/</link>
      <pubDate>Sun, 08 Aug 2021 16:46:09 +0000</pubDate>
      
      <guid>https://blog.kanikig.xyz/AWS-Wavelength-%E5%85%A8%E7%BD%91%E6%9C%80%E7%AE%80%E5%8D%95%E5%BC%80%E6%9C%BA%E6%95%99%E7%A8%8B-%E5%8F%AA%E9%9C%803%E6%AD%A5/</guid>
      <description>只需三步就可以完成aws wavelength开机。目前网上的教程，甚至官方教程都描述的过于繁琐了。对于只是有流媒体观看需求的个人用户，这篇文</description>
      <content:encoded><![CDATA[<p>只需三步就可以完成aws wavelength开机。目前网上的教程，甚至官方教程都描述的过于繁琐了。对于只是有流媒体观看需求的个人用户，这篇文章能帮助您省去许多不必要的步骤。</p>
<h2 id="aws-wavelength-简介">AWS Wavelength 简介</h2>
<blockquote>
<p>官方介绍：https://aws.amazon.com/cn/wavelength/</p>
<p>目前可用区：https://aws.amazon.com/cn/wavelength/locations/</p>
</blockquote>
<p>简单来说就是让服务器流量走运营商网关。对于我们用作代理的情景，运营商ip非常纯净，可以享受到原生本土的互联网访问。</p>
<h2 id="开机三步走">开机三步走</h2>
<p>本文以日本区KDDI开机为例。网上的教程，包括官方指南都有新建VPC这步。其实直接用默认的VPC就行，能省去后面许多步骤。</p>
<h3 id="1-配置网关">1. 配置网关</h3>
<p>搜索框输入VPC，进入VPC控制面板，进入运营商网关，打开Wavelength可用区。</p>
<p>
  <img loading="lazy" src="https://pic.kanikig.xyz/images/2021/08/08/iShot2021-08-08-17.05.01.png" alt="iShot2021-08-08 17.05.01"  /></p>
<p>开启kddi可用区后，再进入运营商网关配置，点击创建运营商网关。因为没有新建VPC，这里选默认那个即可。勾选<strong>将子网流量路由到运营商网关</strong>，创建Wavelength子网。IPV4 CIDR块把VPC的块复制过来，填个/24，把C段的数字改大一些，不报错了就行。
  <img loading="lazy" src="https://pic.kanikig.xyz/images/2021/08/08/iShot2021-08-08-17.17.00.png" alt="iShot2021-08-08 17.17.00"  /></p>
<h3 id="2-创建ec2实例">2. 创建EC2实例</h3>
<p>回到EC2控制面板，创建Wavelength的EC2实例。注意实例只能选择t3.medium, t3.xlarge, r5.2xlarge, g4dn.2xlarge这几种。这里我们选 <strong>t3.medium</strong>。实例配置需要选择刚刚创建的kddi子网，配置如下。其他的配置和平时相同，记得安全组开放所有流量。</p>
<p>
  <img loading="lazy" src="https://pic.kanikig.xyz/images/2021/08/08/iShot2021-08-08-16.07.40.png" alt="iShot2021-08-08 16.07.40"  /></p>
<p>因为Wavelength实例是不能分配外网ip的，所以我们需要额外创建一个普通ec2来内网转发它，保持默认配置即可。这里我们选用免费的 <strong>t2.micro</strong>。</p>
<p>
  <img loading="lazy" src="https://pic.kanikig.xyz/images/2021/08/08/iShot2021-08-08-16.12.33.png" alt="iShot2021-08-08 16.12.33"  /></p>
<p>两个实例创建成功。记录Wavelength实例的内网ip和普通EC2的外网ip。</p>
<p>
  <img loading="lazy" src="https://pic.kanikig.xyz/images/2021/08/08/iShot2021-08-08-16.18.58.png" alt="iShot2021-08-08 16.18.58"  /></p>
<h3 id="3-配置实例转发">3. 配置实例转发</h3>
<p>先连接普通EC2，使用iptables或者brook配置转发，目标ip是Wavelength实例的<strong>内网ip</strong>，目标端口是它的ssh端口。转发完成后，只需将ssh端口改为转发的监听端口，就能连上Wavelength实例了。</p>
<p>
  <img loading="lazy" src="https://pic.kanikig.xyz/images/2021/08/08/iShot2021-08-08-16.21.59.png" alt="iShot2021-08-08 16.21.59"  /></p>
<p>
  <img loading="lazy" src="https://pic.kanikig.xyz/images/2021/08/08/iShot2021-08-08-16.22.16.png" alt="iShot2021-08-08 16.22.16"  /></p>
<p>流媒体测试，没毛病。</p>
<p>
  <img loading="lazy" src="https://pic.kanikig.xyz/images/2021/08/08/iShot2021-08-08-16.24.00.png" alt="iShot2021-08-08 16.24.00"  /></p>
<h2 id="总结">总结</h2>
<p>面板开机的步骤如上所述。当然还有更简便的开机方法，许多大佬开发了AWS的开机bot，使用api开机，更加快捷，只不过都需要购买授权，适合需要批量开机的商家。对于没有批量开机需求的个人用户，可以参考本文的开机方法。</p>
]]></content:encoded>
    </item>
    
    <item>
      <title>目前最稳！使用Gost隧道中转搭建Telegram代理</title>
      <link>https://blog.kanikig.xyz/%E7%9B%AE%E5%89%8D%E6%9C%80%E7%A8%B3%E4%BD%BF%E7%94%A8Gost%E9%9A%A7%E9%81%93%E4%B8%AD%E8%BD%AC%E6%90%AD%E5%BB%BATelegram%E4%BB%A3%E7%90%86/</link>
      <pubDate>Sat, 01 Aug 2020 22:21:38 +0000</pubDate>
      
      <guid>https://blog.kanikig.xyz/%E7%9B%AE%E5%89%8D%E6%9C%80%E7%A8%B3%E4%BD%BF%E7%94%A8Gost%E9%9A%A7%E9%81%93%E4%B8%AD%E8%BD%AC%E6%90%AD%E5%BB%BATelegram%E4%BB%A3%E7%90%86/</guid>
      <description>前言 阅读本文需要有一定linux知识，懂一点linux命令。 本文完全原创，转载请注明。 为什么要采用隧道中转搭建？ 现有的几种常用Telegra</description>
      <content:encoded><![CDATA[<h2 id="前言">前言</h2>
<blockquote>
<p>阅读本文需要有一定linux知识，懂一点linux命令。</p>
<p>本文完全原创，转载请注明。</p>
</blockquote>
<h3 id="为什么要采用隧道中转搭建">为什么要采用隧道中转搭建？</h3>
<p>现有的几种常用Telegram代理方式有如下问题：</p>
<ul>
<li>socks直连：秒封</li>
<li>mtproto直连：基本秒封</li>
<li>mtproto+tls：能有效抗封锁，但是限于直连线路的情况，延迟一般较高</li>
<li>mtproto+中转：mtp流量在国内是会被识别的，NAT商家一般都严禁走mtp</li>
</ul>
<p>那么有没有一种方式能够避免以上所有问题？就是采用隧道中转搭建socks代理。</p>
<p>基本原理如下：</p>
<p>在国外落地机搭建socks代理，国内中转机器使用gost，在两机器间建立加密隧道过墙（隧道是目前最佳的抗封锁形式）。</p>
<h2 id="搭建教程">搭建教程</h2>
<h3 id="示例">示例</h3>
<p>下文演示按照如下假设：</p>
<ul>
<li>国内nat：
<ul>
<li>ip：A.A.A.A</li>
<li>内网端口：11360</li>
<li>外网端口：49698（部分商家支持映射内外网端口一致，这里以不一致做示范，请手动创建好映射）</li>
</ul>
</li>
<li>落地socks5：
<ul>
<li>落地ip：B.B.B.B</li>
<li>socks端口：7891</li>
<li>socks用户名：123456</li>
<li>socks密码：654321</li>
</ul>
</li>
</ul>
<p>自己的各项参数请与示例一一对应，不要照抄。</p>
<h3 id="安装gost">安装gost</h3>
<p>
  <img loading="lazy" src="https://pic.kanikig.xyz/images/2021/01/19/68747470733a2f2f692e6c6f6c692e6e65742f323032302f31322f31342f713735504f367332444d4963554b422e706e67.png" alt="68747470733a2f2f692e6c6f6c692e6e65742f323032302f31322f31342f713735504f367332444d4963554b422e706e67.png"  /></p>
<p>本人基于原EasyGost脚本进行了修改增强，增加了许多功能，具体功能可以看项目页：</p>
<p><a href="https://github.com/KANIKIG/Multi-EasyGost">项目地址</a></p>
<p>一键脚本：</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-shell" data-lang="shell"><span class="line"><span class="cl">wget --no-check-certificate -O gost.sh https://raw.githubusercontent.com/KANIKIG/Multi-EasyGost/master/gost.sh <span class="o">&amp;&amp;</span> chmod +x gost.sh <span class="o">&amp;&amp;</span> ./gost.sh
</span></span></code></pre></div><p>再次运行本脚本只需要输入<code>./gost.sh</code>回车即可</p>
<p>我们在<strong>落地机与国内NAT</strong>均运行此脚本，选1，安装gost。</p>
<p><a href="https://pic.kanikig.xyz/image/XoNz">
  <img loading="lazy" src="https://pic.kanikig.xyz/images/2021/01/18/iShot2021-01-1809.35.59.png" alt="iShot2021-01-1809.35.59.png"  /></a></p>
<p>国内机器安装gost请选择国内加速源，不然从GitHub拉取很慢。</p>
<h3 id="国内nat配置">国内NAT配置</h3>
<p>我们使用脚本添加gost加密转发</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-shell" data-lang="shell"><span class="line"><span class="cl"><span class="c1">#启动脚本</span>
</span></span><span class="line"><span class="cl">./gost.sh
</span></span></code></pre></div><p>接下来按照指示操作即可，我按照前文的示例填写，请自行对应。隧道传输类型选哪个都可以，但是中转和落地选择必须一致。</p>
<p>
  <img loading="lazy" src="https://pic.kanikig.xyz/images/2021/01/18/iShot2021-01-1809.46.55.png" alt="iShot2021-01-1809.46.55.png"  /></p>
<p>
  <img loading="lazy" src="https://pic.kanikig.xyz/images/2021/01/18/iShot2021-01-1809.51.34.png" alt="iShot2021-01-1809.51.34.png"  /></p>
<p>注意这里的目的地端口不能是落地的socks端口，应当是它之外的任意一个空闲端口，仅用于解密隧道流量，具体可以见下一步。上文我选的443，如果落地机器443被站点占用，可以更换为任意端口，不影响安全性。</p>
<h3 id="落地机配置">落地机配置</h3>
<p>脚本内置了socks代理一键安装（gost内置）</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-shell" data-lang="shell"><span class="line"><span class="cl"><span class="c1">#启动脚本</span>
</span></span><span class="line"><span class="cl">./gost.sh
</span></span></code></pre></div><p>
  <img loading="lazy" src="https://pic.kanikig.xyz/images/2021/01/18/iShot2021-01-1809.39.54.png" alt="iShot2021-01-1809.39.54.png"  /></p>
<p>安装好后先用tg直连一下这个socks代理，确定直连能通再进行隧道转发。（确认通了就关掉，socks裸奔很快就会被封）</p>
<p>接下来对接隧道落地端，按照指示操作即可，我按照前文的示例填写，请自行对应。</p>
<p>
  <img loading="lazy" src="https://pic.kanikig.xyz/images/2021/01/18/iShot2021-01-1809.50.03.png" alt="iShot2021-01-1809.50.03.png"  /></p>
<p><a href="https://pic.kanikig.xyz/image/XZ7y">
  <img loading="lazy" src="https://pic.kanikig.xyz/images/2021/01/18/iShot2021-01-1809.51.59.png" alt="iShot2021-01-1809.51.59.png"  /></a></p>
<p>注意流量入口和国内机填的目的地端口必须一致，ip填127.0.0.1，也就是本机ip，这里的目的地端口即为socks代理监听的端口。</p>
<h3 id="tg连接测试">TG连接测试</h3>
<p>填写如下</p>
<p>
  <img loading="lazy" src="https://pic.kanikig.xyz/images/2020/11/26/Screenshot_2020-08-01-23-22-14.jpg" alt="Screenshot_2020-08-01-23-22-14.jpg"  /></p>
<p>如果发现没通，请仔细检查自己参数与示例的对应关系。</p>
<h2 id="后记">后记</h2>
<p>个人体验延迟非常低，并且视频加载速度很快，使用已基本接近在国内使用微信。</p>
]]></content:encoded>
    </item>
    
    <item>
      <title>奈飞如何强制看1080p？</title>
      <link>https://blog.kanikig.xyz/%E5%A5%88%E9%A3%9E%E5%A6%82%E4%BD%95%E5%BC%BA%E5%88%B6%E7%9C%8B1080p/</link>
      <pubDate>Tue, 21 Apr 2020 13:30:29 +0000</pubDate>
      
      <guid>https://blog.kanikig.xyz/%E5%A5%88%E9%A3%9E%E5%A6%82%E4%BD%95%E5%BC%BA%E5%88%B6%E7%9C%8B1080p/</guid>
      <description>前言 相关文章：小白也能看奈飞 之前的教程讲了如何成功观看奈飞，但是很多人又遇到新的问题：无法观看1080p清晰度，最高只到720p。那我们买的</description>
      <content:encoded><![CDATA[<h2 id="前言">前言</h2>
<blockquote>
<p>相关文章：<a href="https://blog.kanikig.xyz/%E5%B0%8F%E7%99%BD%E4%B9%9F%E8%83%BD%E7%9C%8B%E5%A5%88%E9%A3%9E/">小白也能看奈飞</a></p>
</blockquote>
<p>之前的教程讲了如何成功观看奈飞，但是很多人又遇到新的问题：无法观看1080p清晰度，最高只到720p。那我们买的支持1080p的标准套餐岂不是浪费了？</p>
<p>为了帮助大家，首先我们要了解为什么你只能观看720p清晰度。</p>
<h3 id="为什么我无法看1080p">为什么我无法看1080p？</h3>
<p>这是因为Netflix对设备及浏览器都有进行认证，而大名鼎鼎的Chrome与Firefox没有申请认证，导致最高只能支持720p。微软的旧版edge有认证，但是新版的chromium内核edge仍只能默认支持720p。</p>
<h3 id="奈飞对各浏览器的清晰度支持列表">奈飞对各浏览器的清晰度支持列表</h3>
<ul>
<li>Google Chrome
<ul>
<li>Windows、Mac 与 Linux  720p</li>
<li>Chrome OS  1080p</li>
</ul>
</li>
<li>Internet Explorer  1080p</li>
<li>Microsoft Edge（旧版） 4K*</li>
<li>Microsoft Edge（新版chromium内核） 720p</li>
<li>Mozilla Firefox  720p</li>
<li>Opera 可達 720p</li>
<li>Mac OS X 10.10.3 或更新版本上的 Safari  1080p</li>
</ul>
<h2 id="如何观看netflix1080p">如何观看Netflix1080p？</h2>
<p>Chrome及基于chromium内核开发的浏览器（新edge）都不支持1080p，但是它们的用户群体非常大，不能观看1080p也未免太过遗憾。</p>
<p>实际上步骤很简单，很快就能搞定。</p>
<h3 id="下载netflix-1080p扩展">下载Netflix 1080p扩展</h3>
<p>谷歌扩展商店已经无法下载，我们需要从开发者那里直接下载包</p>
<p>下载地址：https://github.com/truedread/netflix-1080p/releases</p>
<p><a href="https://pic.kanikig.xyz/image/R3xJ">
  <img loading="lazy" src="https://pic.kanikig.xyz/images/2020/11/26/nfp1.png" alt="nfp1.png"  /></a></p>
<p>这里要下载第二个<strong>Source Code（zip）</strong></p>
<p>下载完成后放到一个自己不会乱删除的地方，<strong>解压</strong></p>
<p><a href="https://pic.kanikig.xyz/image/Rl1m">
  <img loading="lazy" src="https://pic.kanikig.xyz/images/2020/11/26/nfp2.png" alt="nfp2.png"  /></a></p>
<h3 id="安装扩展">安装扩展</h3>
<p>安装步骤为：</p>
<ul>
<li>打开chrome或新edge的扩展管理</li>
<li>开启开发人员模式</li>
<li>将刚解压好的插件<strong>文件夹</strong>直接拖入窗口</li>
</ul>
<p>安装成功！</p>
<p>
  <img loading="lazy" src="https://pic.kanikig.xyz/images/2020/11/26/nfp3.png" alt="nfp3.png"  /></p>
<h3 id="测试播放">测试播放</h3>
<p>打开一个奈飞视频，按住Ctrl+Alt+Shift+D，可以查看详细播放数据。</p>
<p>刚打开清晰度较低，需要播放一会儿，等速度跑起来。</p>
<p>可以看到已经成功解锁1080p了！</p>
<p>
  <img loading="lazy" src="https://pic.kanikig.xyz/images/2020/11/26/nfp4.png" alt="nfp4.png"  /></p>
<blockquote>
<p>参考文章：</p>
<p>疯先生：https://mrmad.com.tw/chrome-netflix-1080p</p>
</blockquote>
<blockquote>
<p><strong>如果您觉得有帮助，可以在下面打赏请我喝可乐</strong>🥤🥤🥤</p>
</blockquote>
]]></content:encoded>
    </item>
    
    <item>
      <title>Ins账号消失？教你迅速找回</title>
      <link>https://blog.kanikig.xyz/Ins%E8%B4%A6%E5%8F%B7%E6%B6%88%E5%A4%B1%E6%95%99%E4%BD%A0%E8%BF%85%E9%80%9F%E6%89%BE%E5%9B%9E/</link>
      <pubDate>Sat, 18 Apr 2020 18:49:16 +0000</pubDate>
      
      <guid>https://blog.kanikig.xyz/Ins%E8%B4%A6%E5%8F%B7%E6%B6%88%E5%A4%B1%E6%95%99%E4%BD%A0%E8%BF%85%E9%80%9F%E6%89%BE%E5%9B%9E/</guid>
      <description>Ins被停用的征兆 当天我下午打开ins时，提示我账户存在问题，需要我验证手机号，我也没多想就填了，如下图显示。 我打开ins他就会弹出上面这个</description>
      <content:encoded><![CDATA[<h2 id="ins被停用的征兆">Ins被停用的征兆</h2>
<p>当天我下午打开ins时，提示我账户存在问题，需要我验证<strong>手机号</strong>，我也没多想就填了，如下图显示。</p>
<p><a href="https://pic.kanikig.xyz/image/QCc7">
  <img loading="lazy" src="https://pic.kanikig.xyz/images/2020/11/26/ins1.md.jpg" alt="ins1.md.jpg"  /></a></p>
<p>我打开ins他就会弹出上面这个页面，不让我进入app。</p>
<p>于是等到晚上，我等不及了就退出了账户，想重新登录试试。结果不论怎么试都无法登录：</p>
<ul>
<li>使用Facebook账户登陆：我ins账户和脸书是绑定的，之前登陆也都是这样登陆的。但是现在登陆却无法进入。</li>
<li>使用账号密码登陆：我有把账号密码记在备忘录的习惯，账号和密码不可能搞错，但是登陆却一直说我密码错误。</li>
</ul>
<p>匪夷所思的我用网页直接搜索我的用户名进入个人主页，结果发现已经找不到用户。</p>
<p>你也可能遇到以下提示，都说明账号已被停用。（图片源于网络）</p>
<p><a href="https://pic.kanikig.xyz/image/QLs6">
  <img loading="lazy" src="https://pic.kanikig.xyz/images/2020/11/26/ins4.jpg" alt="ins4.jpg"  /></a></p>
<p><a href="https://pic.kanikig.xyz/image/QiO0">
  <img loading="lazy" src="https://pic.kanikig.xyz/images/2020/11/26/ins5.md.jpg" alt="ins5.md.jpg"  /></a></p>
<h2 id="如何找回账户">如何找回账户？</h2>
<p>找回非常简单，而且如果在下午（北京时间）很快就能找回。</p>
<p>登陆网址：</p>
<p><a href="https://help.instagram.com/contact/1652567838289083">instagram帮助中心</a></p>
<p>填写表单</p>
<p><a href="https://pic.kanikig.xyz/image/QEL5">
  <img loading="lazy" src="https://pic.kanikig.xyz/images/2020/11/26/ins2.jpg" alt="ins2.jpg"  /></a></p>
<p><strong>注意：</strong></p>
<ul>
<li>邮箱可以不是账户之前绑定的邮箱，他会帮你重新绑定到这个新填写的。</li>
<li>不要填<strong>国内</strong>邮箱！很可能收不到邮件。</li>
<li>账号名如果忘了那就没辙了</li>
<li>姓名可以不是真名</li>
<li>填的信息建议截个图，后面要用到的</li>
<li>国家就填中国即可</li>
</ul>
<p>填写完后很快你会收到如下邮件：</p>
<p>
  <img loading="lazy" src="https://pic.kanikig.xyz/images/2020/11/26/ins3.jpg" alt="ins3.jpg"  /></p>
<p>在纸上依次写下他给的：</p>
<ul>
<li>数字代码</li>
<li>全名（就是前面网页填写的姓名，一致即可）</li>
<li>用户名</li>
</ul>
<p>最好用粗的笔写大一点，之后拿着自拍即可。</p>
<p>有的手机相机拍出来是左右镜像的。。自己翻转一下。</p>
<p>直接回复那封邮件，以<strong>附件</strong>形式上传照片。</p>
<p>可以说几句话，我是用英文请他尽快恢复我的账户，语气客气些。</p>
<p>不用等很久，就会收到账户恢复的邮件了！</p>
<p>
  <img loading="lazy" src="https://pic.kanikig.xyz/images/2020/11/26/ins6.jpg" alt="ins6.jpg"  /></p>
<h2 id="后记">后记</h2>
<p>最开始我还恶意揣测ins是因为我填的大陆手机号所以封我号，事实证明他们对用户是一视同仁的，邮件也使用的中文，恢复很快，很贴心。</p>
<p>账号丢失让人很难受，关注的人，还有帖子，丢失的是回忆。</p>
<p>希望大家都能尽快找回账号。</p>
<blockquote>
<p><strong>如果您觉得有帮助，可以在下面打赏请我喝可乐</strong>🥤🥤🥤</p>
</blockquote>
]]></content:encoded>
    </item>
    
    <item>
      <title>最强浏览器插件——油猴Tampermonkey</title>
      <link>https://blog.kanikig.xyz/%E6%9C%80%E5%BC%BA%E6%B5%8F%E8%A7%88%E5%99%A8%E6%8F%92%E4%BB%B6%E6%B2%B9%E7%8C%B4Tampermonkey/</link>
      <pubDate>Fri, 10 Apr 2020 15:27:09 +0000</pubDate>
      
      <guid>https://blog.kanikig.xyz/%E6%9C%80%E5%BC%BA%E6%B5%8F%E8%A7%88%E5%99%A8%E6%8F%92%E4%BB%B6%E6%B2%B9%E7%8C%B4Tampermonkey/</guid>
      <description>什么是油猴？ 来看看官方的介绍吧： Tampermonkey 是一款免费的浏览器扩展和最为流行的用户脚本管理器，它适用于 Chrome, Microsoft Edge, Safari, Opera Next, 和 Firefox。 虽然有些受支持的浏</description>
      <content:encoded><![CDATA[<h2 id="什么是油猴">什么是油猴？</h2>
<p>
  <img loading="lazy" src="https://pic.kanikig.xyz/images/2020/11/26/tampermonkey.png" alt="tampermonkey.png"  /></p>
<p>来看看官方的介绍吧：</p>
<blockquote>
<p><strong>Tampermonkey</strong> 是一款免费的浏览器扩展和最为流行的用户脚本管理器，它适用于 Chrome, Microsoft Edge, Safari, Opera Next, 和 Firefox。</p>
<p>虽然有些受支持的浏览器拥有原生的用户脚本支持，但 Tampermonkey 将在您的用户脚本管理方面提供更多的便利。 它提供了诸如便捷脚本安装、自动更新检查、标签中的脚本运行状况速览、内置的编辑器等众多功能， 同时Tampermonkey还有可能正常运行原本并不兼容的脚本。</p>
<p>它可以很快的安装好，来试一试吧！</p>
</blockquote>
<p>开发者将脚本上传到开放平台，通过油猴能够方便地安装并管理各种脚本，有些脚本的功能堪称<strong>黑科技</strong>。</p>
<p>我个人很喜欢的有：</p>
<ul>
<li>解除B站港澳台区域限制（简称壁外调查🙂）</li>
<li>百度网盘直链下载</li>
<li>百度网盘自动填验证码</li>
<li>各网站去广告</li>
<li>知网pdf下载（这个对大学生来说真的太有用了，我从来没用过caj阅读）</li>
<li>YTB视频下载</li>
<li>HTML5播放</li>
<li>知乎自动展开折叠</li>
<li>&hellip;&hellip;.</li>
</ul>
<p><strong>高度定制你的浏览器，大大提升浏览体验！</strong></p>
<h2 id="如何安装使用油猴">如何安装使用油猴？</h2>
<p>非常简单，去<a href="https://chrome.google.com/webstore/">chrome商店</a>安装即可，微软的edge商店也已经上架。</p>
<p>
  <img loading="lazy" src="https://pic.kanikig.xyz/images/2020/11/26/yh2.png" alt="yh2.png"  /></p>
<p><a href="https://pic.kanikig.xyz/image/XB0z">
  <img loading="lazy" src="https://pic.kanikig.xyz/images/2020/11/26/yh3.png" alt="yh3.png"  /></a></p>
<p>安装以后浏览器就出现了猴子标志，点击它，选择获取脚本</p>
<p><a href="https://pic.kanikig.xyz/image/XhC5">
  <img loading="lazy" src="https://pic.kanikig.xyz/images/2020/11/26/yh4.png" alt="yh4.png"  /></a></p>
<p>
  <img loading="lazy" src="https://pic.kanikig.xyz/images/2020/11/26/yh5.png" alt="yh5.png"  /></p>
<p>这里建议选Greasyfork，脚本比较多</p>
<p>
  <img loading="lazy" src="https://pic.kanikig.xyz/images/2020/11/26/yh6.png" alt="yh6.png"  /></p>
<p>搜索你想要的脚本关键词，比如我搜索知网CNKI</p>
<p>
  <img loading="lazy" src="https://pic.kanikig.xyz/images/2020/11/26/yh7.png" alt="yh7.png"  /></p>
<p>第二个就是我正在用的脚本，点击进去安装。</p>
<p>安装瞬间完成，再次点击猴子进入管理面板，可以看到已经安装并开启了</p>
<p>
  <img loading="lazy" src="https://pic.kanikig.xyz/images/2020/11/26/yh8.png" alt="yh8.png"  /></p>
<p><a href="https://pic.kanikig.xyz/image/XMVM">
  <img loading="lazy" src="https://pic.kanikig.xyz/images/2020/11/26/yh9.png" alt="yh9.png"  /></a></p>
<p>进入知网测试，随便找个论文，可以发现页面上多出了pdf下载。知网的学位论文很多不提供pdf，用这个脚本也能下载pdf格式。</p>
<p><a href="https://pic.kanikig.xyz/image/Xuks">
  <img loading="lazy" src="https://pic.kanikig.xyz/images/2020/11/26/yh10.md.png" alt="yh10.md.png"  /></a></p>
<h2 id="脚本推荐">脚本推荐</h2>
<p>好用的脚本很多，下面的参考文章就有大量推荐。</p>
<p>我脚本装的不多，只留了个人常用的</p>
<p>[
  <img loading="lazy" src="https://pic.kanikig.xyz/images/2020/11/26/yh9.png" alt="yh9.png"  /></p>
<p>更多好用的就留给你自己去发现了!</p>
<blockquote>
<p>本文参考以下文章部分内容：</p>
<p>少数派Eric_hong：https://sspai.com/post/40485</p>
<p>少数派Eric_hong：https://sspai.com/post/42380</p>
</blockquote>
<blockquote>
<p><strong>如果您觉得有帮助，可以在下面打赏请我喝可乐</strong>🥤🥤🥤</p>
</blockquote>
]]></content:encoded>
    </item>
    
    <item>
      <title>小白也能看奈飞</title>
      <link>https://blog.kanikig.xyz/%E5%B0%8F%E7%99%BD%E4%B9%9F%E8%83%BD%E7%9C%8B%E5%A5%88%E9%A3%9E/</link>
      <pubDate>Thu, 09 Apr 2020 18:43:29 +0000</pubDate>
      
      <guid>https://blog.kanikig.xyz/%E5%B0%8F%E7%99%BD%E4%B9%9F%E8%83%BD%E7%9C%8B%E5%A5%88%E9%A3%9E/</guid>
      <description>前言 相关文章：奈飞如何强制看1080p？ 什么是奈飞Netflix？ Wikipedia： 奈飞（英语：Netflix（/ˈnɛtflɪks/），</description>
      <content:encoded><![CDATA[<h2 id="前言">前言</h2>
<blockquote>
<p>相关文章：<a href="https://blog.kanikig.xyz/%E5%A5%88%E9%A3%9E%E5%A6%82%E4%BD%95%E5%BC%BA%E5%88%B6%E7%9C%8B1080p%EF%BC%9F/">奈飞如何强制看1080p？</a></p>
</blockquote>
<h3 id="什么是奈飞netflix">什么是奈飞Netflix？</h3>
<p><a href="https://pic.kanikig.xyz/image/R24q">
  <img loading="lazy" src="https://pic.kanikig.xyz/images/2020/11/26/nf5.png" alt="nf5.png"  /></a></p>
<blockquote>
<p><a href="https://zh.wikipedia.org/wiki/Netflix">Wikipedia</a>：</p>
<p><strong>奈飞</strong>（英语：Netflix（/ˈnɛtflɪks/），官方繁体中文名：网飞）是起源于美国、在多国提供网络视频点播的OTT服务公司。</p>
<p>除了光盘出租服务外，奈飞另外提供在线视频流服务，能使用各种网络设备链接到奈飞的在线内容数据库，单一订阅者的账号能同时让多人使用，即使在非订阅者的电脑或设备上也能登录服务。</p>
<p>奈飞在2010年首次对国际市场提供网络流服务，该服务于9月22日在加拿大推出。</p>
<p>如今，奈飞在流媒体平台上已是世界数一数二的佼佼者，主要的竞争对手有HBO、亚马逊视频、Disney+、YouTube、Apple TV+及AT&amp;T。</p>
<p><strong>广电总局规定</strong>，境外公司<strong>不得</strong>在中国<strong>大陆</strong>境内开展视听服务，再加上该地区严厉苛刻的网络审查制度，导致奈飞至今仍未进入中国大陆市场。</p>
<p>奈飞虽然没有进入中国大陆市场，但有购入该国部分的电影和剧集海外播映权。</p>
</blockquote>
<h3 id="为什么选择netflix">为什么选择Netflix？</h3>
<ul>
<li><strong>巨大的影视资源库</strong></li>
</ul>
<p>
  <img loading="lazy" src="https://pic.kanikig.xyz/images/2020/11/26/nf1.png" alt="nf1.png"  /></p>
<p>奈飞有许多<strong>独家</strong>影视剧集，无法在其他平台观看，其中著名的如：《毒枭》、《纸房子》、《十三个理由》、《瑞克和莫蒂》等等，还有刚刚火热的《王国》（李尸朝鲜）第二季。</p>
<p>除了独家剧集之外，它同时购买了大量<strong>其他</strong>资源，如宫崎骏系列电影、《泰坦尼克号》等经典电影、《老友记》、《生活大爆炸》、《摩登家庭》等经典美剧。</p>
<p>不同地区享有部分地区独享资源，如日本区就有当季新番动漫和日本院线电影，其他区是无法观看的。</p>
<ul>
<li><strong>良好的语言支持</strong></li>
</ul>
<p>
  <img loading="lazy" src="https://pic.kanikig.xyz/images/2020/11/26/nf4.png" alt="nf4.png"  /></p>
<p>奈飞独家剧集的配音和字幕支持各种语言，满足全球各地区的播放需求。支持中文字幕的有<strong>香港、台湾、新加坡</strong>区，这三个区的资源量差别不大，并且基本所有资源都配有中文字幕。（其他区只有奈飞独家剧集会提供中文，大部分其他资源都不支持中文）</p>
<ul>
<li><strong>高清舒适的播放</strong></li>
</ul>
<p>奈飞支持各种设备，并且提供4k级别的清晰度，带给用户舒适的观看体验。</p>
<h3 id="如何才能看netflix">如何才能看Netflix？</h3>
<h4 id="必要条件">必要条件</h4>
<p>简而言之，只需要3个条件：</p>
<ul>
<li><strong>支持奈飞播放的节点</strong></li>
</ul>
<p>大部分服务器节点是不支持奈飞播放的，所以首先需要确认自己拥有一个支持奈飞播放的节点。具体获取方式这里不提供。</p>
<ul>
<li><strong>奈飞账号</strong></li>
</ul>
<p>不建议自己注册充值，因为奈飞不支持国内支付方式，并且自己购买会很贵。建议的方式是找代充或者买共享号。下节会详细讨论这两种方式。</p>
<ul>
<li><strong>支持奈飞的设备</strong></li>
</ul>
<p>几乎所有设备都可播放，电脑手机上手简单，但是电视较难，后文会具体讨论各种设备如何看奈飞。</p>
<h4 id="操作步骤">操作步骤</h4>
<h5 id="获取账号">获取账号</h5>
<p>前文已经提到，建议的方式是购买<strong>共享号</strong>和找<strong>代充</strong>，本文不提供渠道。</p>
<p>如果是代充一定要<strong>注意</strong>不要自己先去注册，把邮箱和自己想设定的密码交给代充的人让他帮你操作。因为如果你已经注册到支付那一步的话，他是无法正常帮你完成的。完成之后自己修改密码即可，很安全。</p>
<p>共享号较便宜，比较建议按月买每月换，因为毕竟不是自己的号。</p>
<h5 id="套餐选择">套餐选择</h5>
<p>
  <img loading="lazy" src="https://pic.kanikig.xyz/images/2020/11/26/20451.png" alt="20451.png"  /></p>
<p>奈飞共有三档套餐，具体如上图。正常选择<strong>标准</strong>即可，因为就算选了高级4k，国内大部分设备也都是不支持的。个人体验1080完全足够了。 不同区价格不同，土耳其价格是全球最低，但是也因此奈飞作出了限制措施，现在不好搞到。如果是代充应当了解一下是哪个区的，比较一下价格，共享号不需要了解，因为都很便宜。</p>
<h5 id="播放测试">播放测试</h5>
<p>账号和必要的工具都有了以后，登陆奈飞网站，打开一个<strong>非奈飞独家剧集</strong>（封面上有奈飞的N标志的为奈飞独家）。这是因为奈飞独家剧集不会检测代理工具，普通节点也可以正常播放，但是海量其他资源是会进行探测的。如果播放不幸显示如下，则此节点不支持奈飞：</p>
<p>
  <img loading="lazy" src="https://pic.kanikig.xyz/images/2020/11/26/nf2.png" alt="nf2.png"  /></p>
<p><a href="https://pic.kanikig.xyz/image/RtUF">
  <img loading="lazy" src="https://pic.kanikig.xyz/images/2020/11/26/nf3.png" alt="nf3.png"  /></a></p>
<p>只能更换支持奈飞的节点，在浏览器输入 <a href="https://www.netflix.com/clearcookies">https://www.netflix.com/clearcookies</a> ，<strong>清除cookie</strong>后重新登录再测试，直到成功。</p>
<h4 id="新手容易遇到的问题">新手容易遇到的问题</h4>
<ul>
<li><strong>播放清晰度很低</strong></li>
</ul>
<p>这是正常的，除非你的网络快到飞起，一般视频刚开始播放清晰度较低，播放一会儿就逐渐达到清晰度了。</p>
<p>也可能是你忘了设置默认播放清晰度，在<strong>账户</strong>里可以设置默认清晰度，也可对字幕大小、字体等进行设置。</p>
<p>Chrome及新edge无法1080p播放，具体解锁方法见：</p>
<p><a href="https://blog.kanikig.xyz/%E5%A5%88%E9%A3%9E%E5%A6%82%E4%BD%95%E5%BC%BA%E5%88%B6%E7%9C%8B1080p%EF%BC%9F/">奈飞如何强制看1080p？</a></p>
<ul>
<li><strong>提示使用解锁工具</strong></li>
</ul>
<p>上文说过，基本是因为该节点不支持奈飞。如果你确认该节点支持，就清理cookie重新登录试试。</p>
<ul>
<li><strong>如何将账号共享给他人</strong></li>
</ul>
<p><a href="https://pic.kanikig.xyz/image/R24q">
  <img loading="lazy" src="https://pic.kanikig.xyz/images/2020/11/26/nf5.png" alt="nf5.png"  /></a></p>
<p>个人账号可以建立5个账户，互相独立，但是标准套餐只能两个设备同时观看。</p>
<p>如果有多人同时多设备观看，可以购买家庭版。</p>
<h2 id="在不同设备观看netflix">在不同设备观看Netflix</h2>
<h3 id="windows">Windows</h3>
<p>
  <img loading="lazy" src="https://pic.kanikig.xyz/images/2020/11/26/edge1.jpg" alt="edge1.jpg"  /></p>
<p>建议使用微软的新edge（chromium内核）或者谷歌的chrome。</p>
<p>chrome只支持720p播放</p>
<p>如果使用edge观看出现错误（非提示代理），请在edge的设置里关闭<strong>硬件加速</strong>。</p>
<p>不建议使用uwp应用。</p>
<h3 id="macos">Macos</h3>
<p>
  <img loading="lazy" src="https://pic.kanikig.xyz/images/2020/11/26/safari.png" alt="safari.png"  /></p>
<p>safari支持1080p清晰度。</p>
<p>个人因为喜欢edge所以macos也用的edge，使用和windows一样。</p>
<h3 id="android">Android</h3>
<p>如果play商店搜不到NF或者提示不支持你的地区，不用慌，很正常。</p>
<p>谷歌搜索apkure，这是个应用下载站，可以下载。</p>
<p>
  <img loading="lazy" src="https://pic.kanikig.xyz/images/2020/11/26/apkure.jpg" alt="apkure.jpg"  /></p>
<p>但是必然会遇到一个问题，apkure下载的NF格式是xapk格式，不是传统的apk，无法直接安装。这是比较新的安卓包格式，手动安装需要按如下步骤：</p>
<ol>
<li>
<p>在文件管理器把xapk后缀名改为<strong>zip</strong>然后解压，会发现是一个文件夹，包含了一堆apk。</p>
<p>
  <img loading="lazy" src="https://pic.kanikig.xyz/images/2020/11/26/nf6.jpg" alt="nf6.jpg"  /></p>
</li>
<li>
<p>在酷安或者play商店下载<strong>SAI安装器</strong></p>
<p><a href="https://pic.kanikig.xyz/image/R5K1">
  <img loading="lazy" src="https://pic.kanikig.xyz/images/2020/11/26/nf7.md.jpg" alt="nf7.md.jpg"  /></a></p>
</li>
<li>
<p>如果你是MIUI系统（不是的话跳过这步），请进入开发者选项，拉到最下面，关闭<strong>MIUI优化</strong>。完成安装后回来<strong>再开启</strong>即可。</p>
</li>
<li>
<p>使用SAI，点击安装apk，选择进入刚刚一堆apk的文件夹，选中里面<strong>所有</strong>的apk，确认<strong>一个不漏</strong>，然后安装。</p>
<p><a href="https://pic.kanikig.xyz/image/RAuR">
  <img loading="lazy" src="https://pic.kanikig.xyz/images/2020/11/26/nf9.jpg" alt="nf9.jpg"  /></a></p>
</li>
<li>
<p>稍微等待一会儿，安装完成！用上了最新的奈飞app！</p>
<p>
  <img loading="lazy" src="https://pic.kanikig.xyz/images/2020/11/26/nf8.jpg" alt="nf8.jpg"  /></p>
</li>
</ol>
<h3 id="ios">ios</h3>
<p>ios需要外区账号，具体获取方式本文不提供。获取到外区账号后，在appstore内切换到该账号即可下载app。</p>
<h3 id="电视">电视</h3>
<p>国内大部分电视不支持NF，而且你必须拥有一个软路由给电视提供代理。如果你一定要在电视上看，除了你必须自备软路由，有以下几种方法：</p>
<ol>
<li>
<p>购买支持NF的电视</p>
</li>
<li>
<p>购买类似于苹果盒子的电视盒</p>
</li>
<li>
<p>这个方法比较巧，是我个人研究出来的。当你能够在电脑正常播放NF后，某宝几十块买一个USB转HDMI线（如果你的电脑自带HDMI口，直接买HDMI线，更便宜）。电视一般有3个HDMI口，把电脑接上去就可以用了。因为是有线连接，投到电视上效果很好，个人体验极佳。</p>
<p><a href="https://pic.kanikig.xyz/image/XR4j">
  <img loading="lazy" src="https://pic.kanikig.xyz/images/2020/11/26/nf11.jpg" alt="nf11.jpg"  /></a></p>
<p>
  <img loading="lazy" src="https://pic.kanikig.xyz/images/2020/11/26/nf12.jpg" alt="nf12.jpg"  /></p>
</li>
</ol>
<blockquote>
<p>本文参考以下文章部分内容：</p>
<p>少数派 JmPotato：https://sspai.com/post/40619</p>
<p>数字移民：https://blog.shuziyimin.org/16</p>
<p>微跨境：https://vkuajing.net/netflix-in-china</p>
</blockquote>
<blockquote>
<p><strong>如果您觉得有帮助，可以在下面打赏请我喝可乐</strong>🥤🥤🥤</p>
</blockquote>
]]></content:encoded>
    </item>
    
    <item>
      <title>开始你的GitHub之旅</title>
      <link>https://blog.kanikig.xyz/%E5%BC%80%E5%A7%8B%E4%BD%A0%E7%9A%84GitHub%E4%B9%8B%E6%97%85/</link>
      <pubDate>Fri, 03 Apr 2020 19:26:30 +0000</pubDate>
      
      <guid>https://blog.kanikig.xyz/%E5%BC%80%E5%A7%8B%E4%BD%A0%E7%9A%84GitHub%E4%B9%8B%E6%97%85/</guid>
      <description>前言 适合系统：linux和macos 阅读本文需要有一定linux知识，懂一点linux命令。 什么是Github? 要了解什么是GitHub，首</description>
      <content:encoded><![CDATA[<h2 id="前言">前言</h2>
<blockquote>
<p>适合系统：linux和macos</p>
<p>阅读本文需要有一定linux知识，懂一点linux命令。</p>
</blockquote>
<h3 id="什么是github">什么是Github?</h3>
<p>
  <img loading="lazy" src="https://pic.kanikig.xyz/images/2020/11/26/git.png" alt="git.png"  /></p>
<p>
  <img loading="lazy" src="https://pic.kanikig.xyz/images/2020/11/26/github.jpg" alt="github.jpg"  /></p>
<p>要了解什么是<strong>GitHub</strong>，首先要了解什么是<strong>Git</strong>：</p>
<blockquote>
<p>Git（读音为/gɪt/）是一个开源的分布式版本控制系统，可以有效、高速地处理从很小到非常大的项目版本管理。相比于集中式的最大区别在于开发者可以提交到本地，每个开发者通过克隆（git clone），在本地机器上拷贝一个完整的Git仓库。</p>
</blockquote>
<p><strong>GitHub</strong>：</p>
<blockquote>
<p>GitHub是一个面向<a href="https://baike.baidu.com/item/%E5%BC%80%E6%BA%90/20720669">开源</a>及私有<a href="https://baike.baidu.com/item/%E8%BD%AF%E4%BB%B6/12053">软件</a>项目的托管平台，因为只支持git 作为唯一的版本库格式进行托管，故名GitHub。</p>
</blockquote>
<p>简单来说，就是能把你写的代码项目在任何设备随时上传，可以在任何设备再下载下来，实现多端同步。</p>
<h2 id="正文">正文</h2>
<h3 id="创建你自己的git项目仓库">创建你自己的git项目仓库</h3>
<p>注册github后，进入个人账户页面，有个<strong>New</strong>按钮。点击以后创建<strong>Repository</strong>仓库。</p>
<p>
  <img loading="lazy" src="https://pic.kanikig.xyz/images/2020/11/26/img20431.png" alt="img20431.png"  /></p>
<p>命名自己能懂即可，最好和你本地的项目文件夹相似，后面会用到，比如我这里创建的是自己R语言学习的内容</p>
<h3 id="本地部署git">本地部署git</h3>
<p>安装非常简单，只要懂一些命令即可。</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-shell" data-lang="shell"><span class="line"><span class="cl">$ sudo apt install git-all <span class="c1">#debian系</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">$ git --version <span class="c1">#macos安装Xcode Command Line Tools后运行该命令即可。Xcode Command Line Tools的安装方式也十分简单，请自行查找。</span>
</span></span></code></pre></div><p>其余系统安装请参考git官网：<a href="https://git-scm.com/book/zh/v2/%E8%B5%B7%E6%AD%A5-%E5%AE%89%E8%A3%85-Git">GIT起步</a></p>
<h3 id="将机器与github关联">将机器与Github关联</h3>
<p>相信玩过服务器的朋友应该都知道ssh是什么。由于git是通过ssh完成文件上传下载的，所以需要将一个ssh秘钥文件填到GitHub，完成你的机器的认证。</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-shell" data-lang="shell"><span class="line"><span class="cl">$ <span class="nb">cd</span> .ssh 
</span></span></code></pre></div><blockquote>
<p>如果提示No such file or directory，说明本机还没有生成过sshkey，执行下面的命令</p>
</blockquote>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-shell" data-lang="shell"><span class="line"><span class="cl">$ ssh-keygen -t rsa -C <span class="s2">&#34;你的邮箱地址&#34;</span>
</span></span></code></pre></div><p>这步运行结束出现长方形字符画即成功，申请的sshkey已经保存在.ssh文件夹里了。</p>
<p>之后打开秘钥文件复制里面的全部内容：</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-shell" data-lang="shell"><span class="line"><span class="cl">$ cat ~/.ssh/id_rsa.pub
</span></span><span class="line"><span class="cl"><span class="c1">#或者如果你会用vim</span>
</span></span><span class="line"><span class="cl">$ vim ~/.ssh/id_rsa.pub
</span></span></code></pre></div><p>当然也可以直接用文本编辑器打开，.ssh隐藏文件夹在你的用户文件夹下。macos显示隐藏文件快捷键为Ctrl+shift+.</p>
<p><a href="https://pic.kanikig.xyz/image/Qgfb">
  <img loading="lazy" src="https://pic.kanikig.xyz/images/2020/11/26/img20433.png" alt="img20433.png"  /></a></p>
<p>回到你的GitHub用户页，点击右上角，进入settings，点击左侧SSH and GPG keys</p>
<p>
  <img loading="lazy" src="https://pic.kanikig.xyz/images/2020/11/26/20434.png" alt="20434.png"  /></p>
<p>
  <img loading="lazy" src="https://pic.kanikig.xyz/images/2020/11/26/20435.png" alt="20435.png"  /></p>
<p>点击右上角newsshkeys，标题随意，把复制的秘钥文件内容粘贴进下面的框里保存，就完成的GitHub认证。</p>
<p>
  <img loading="lazy" src="https://pic.kanikig.xyz/images/2020/11/26/20436.png" alt="20436.png"  /></p>
<p>完成之后终端通过以下命令确认SSH key是否成功</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-shell" data-lang="shell"><span class="line"><span class="cl">$ ssh -T git@GitHub.com
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1">#最后出现以下内容即成功</span>
</span></span><span class="line"><span class="cl">Hi 你的用户名! You<span class="err">&#39;</span>ve successfully authenticated, but GitHub does not provide shell access.
</span></span></code></pre></div><h3 id="将项目文件夹进行git配置并上传">将项目文件夹进行git配置并上传</h3>
<p>终端通过<strong>cd</strong>进入你想要同步的<strong>项目文件夹</strong>，运行如下命令：</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-shell" data-lang="shell"><span class="line"><span class="cl">$ git init <span class="c1">#初始化,这步运行后你的终端会显示git:(master) ✗ </span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">$ git add . <span class="c1">#官网给的指导里写的是README.md，那只是个示范，是只把README.md这个文件上传。这里的意义是同步这个文件夹的所有内容</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">$ git commit -m <span class="s2">&#34;first commit&#34;</span> <span class="c1">#引号内的内容是写你上传更新的原因</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">$ git branch -M main
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">$ git remote add origin https://github.com/你的用户名/你刚刚设置的仓库名.git 
</span></span><span class="line"><span class="cl"><span class="c1">#忘记仓库名的话浏览器进你仓库页面，网址复制下来后面加上.git即可</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">$ git push -u origin main <span class="c1">#push上传</span>
</span></span></code></pre></div><p>完成！现在重新进入仓库页面，可以看到文件夹下的内容已经在里面了！</p>
<p>以后只需要cd到<strong>项目文件夹</strong>，执行<strong>以下的命令</strong>就能上传更新了。</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-shell" data-lang="shell"><span class="line"><span class="cl">$ git add .
</span></span><span class="line"><span class="cl">$ git commit -m <span class="s2">&#34;更新原因&#34;</span>
</span></span><span class="line"><span class="cl">git push -u origin main
</span></span></code></pre></div><p>若要将云端代码<strong>同步到本地</strong>，命令：</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-shell" data-lang="shell"><span class="line"><span class="cl">$ git pull --rebase origin master
</span></span></code></pre></div><p>然后你就可以愉快地把自己的所有项目进行上传到github了！</p>
<blockquote>
<p>参考3y的文章的部分内容：https://github.com/ZhongFuCheng3y/3y 并作出一定修正改进。</p>
</blockquote>
]]></content:encoded>
    </item>
    
  </channel>
</rss>
