日記帳

プログラミングのことをつぶやく日記です。

DNSに指定した8.8.8.8は何者か

VirtualBoxを用いてCentOSの環境を作成することがあり、接続先の編集をする機会があった。資料を見ながら環境構築していてDNSに8.8.8.8を指定しており、これは何のアドレスなのか気になった。

8.8.8.8はGoogle Public DNSである。以下は公式の文章を引用して理解してみる。1

Why does DNS matter? The Domain Name System (DNS) protocol is an important part of the web's infrastructure, serving as the Internet's phone book: every time you visit a website, your computer performs a DNS lookup. Complex pages often require multiple DNS lookups before they start loading, so your computer may be performing hundreds of lookups a day.

DNSプロトコルはインターネットの電話帳のようなものを配るWEBのインフラの重要な部分である。いつでもあなたはWEBサイトを訪れることができ、あなたのコンピュータはDNSの逆引きを実行する。複雑なページはロードをスタートする前に、時々複数のDNSの逆引きを要求する。だからあなたのコンピュータは1日に数百の逆引きを実行することになるだろう。

Configure your network settings to use the IP addresses 8.8.8.8 and 8.8.4.4 as your DNS servers.

あなたのDNSサーバーのように、IPアドレス8.8.8.8と8.8.4.4を使うため、あなたのネットワークセッティングを行う。

なぜGoogle Public DNSを使うべきなのか?

公式サイトに以下の記述があった。

  • ブラウザの体験をスピードアップさせる
  • あなたのセキュリティを向上させる
  • リダイレクトせずに期待したどおりの結果が得られる

ほかのPublicなDNSもある?

ここをみていろいろDNSがあることを知った。2

Windowsランチャーアプリ「Keypirinha」を導入した

Mac->Windwosに移行したときにalfred3みたいなランチャーアプリを探していたら「Keyprinha」に落ち着きそうなので、導入でやったことをメモした。

スタートメニューは使いづらい

移行当初は、Winキーを押して出現するスタートメニューをランチャー代わりにしていたけど、動作がもっさりしていて使用感が良くなかった。

Hain を試したけどUWPをsearchできない

最初は「Hain」というランチャーアプリを試した。

GitHub - hainproject/hain: An 'alt+space' launcher for Windows, built with Electron

使用感はよさそうに思ったが、UWP(MicrosoftStoreでインストールしたアプリのこと)が起動できない。僕はWindows Teminalを頻繁に立ち上げるので、これはできてほしい。解決方法は存在しないか調べてみた。このUWPの実行ファイルは C:\Program Files\WindowsAppsフォルダに隠しフォルダとして格納されている。しかしHainからこの場所を参照するには権限の変更が必要であった。権限の変更など正直面倒だったので、Hainはやめることにした。この記事を書いているときに気が付いたが、Hainの開発は2018で止まっていた。UWPの権限回りはここを見て知った。

KeyprinhaならUWPを立ち上げることができそうだ

調べたら以下の記事にたどり着いた。どうやらKeyprinhaならプラグインを入れればUWPを立ち上げることができそうだ。導入した上でやったことを書き残す。

shikiyura.com

導入手順

導入に当たっては以下の3点の資料を読んだ。

Keyprinhaの公式ドキュメント

Keyprinhaのパッケージ管理のリポジトリ

UWPアプリを起動させるためのパッケージのReadme

公式ドキュメント通り、Download full version (portable) をダウンロードした。デフォルトのショートカットだと Ctrl + win + K でKeyprinhaが起動する。次にUWPも参照できるようにする。新たにパッケージを入れる必要がある。まずはKeyprinhaでパッケージを管理できるようにする。Keypirinha: Consoleを開いて以下のコマンドを実行した。このコマンドはKeyprinhaのパッケージ管理のリポジトリのReadmeに記述があった。

import keypirinha as kp,keypirinha_net as kpn,os;p="PackageControl.keypirinha-package";d=kpn.build_urllib_opener().open("https://github.com/ueffel/Keypirinha-PackageControl/releases/download/1.0.4/"+p);pb=d.read();d.close();f=open(os.path.join(kp.installed_package_dir(),p),"wb");f.write(pb);f.close()

実行したらLaunchBoxを開いて、Install Package と入力した。そのあとにKeypirinha-WindowsAppsと入力した。しばらくして、LaunchBoxWindowsTerminalと打って、UWPアプリが起動できることを確認した。

f:id:leokun0210:20211022180327p:plain

ショートカットキーを変更する

デフォルトのショートカットでKeyprinhaを立ち上げるの指が攣るので、Alt + SpaceLaunchBoxが開けるようにした。Configure Kyeprinhaでiniファイルを編集した。以下のように書けばショートカットを変更できた。

[app]
hotkey_run = Alt+Space

Mysql2::Error: SSL connection error: error:1425F102:SSL routines:ssl_choose_client_version:unsupported protocol を解決した

MySQLに接続しようと思ったら下記のようなエラーが出ました。

Mysql2::Error: SSL connection error: error:1425F102:SSL routines:ssl_choose_client_version:unsupported protocol

調べたところUbuntu20.04で見られるエラーらしいです。1

StackOverFlowにはUbuntu20.04はデフォルトではTLS1は使えないようです。どうやらTLS v1.2がデフォルトで使用する設定のようです。2

stackoverflow.com

参考にした資料通りに設定を変更します。

> sudo vim /usr/lib/ssl/openssl.cnf

ファイル上部に下記を追加しました。

openssl_conf = default_conf

ファイル下部に末尾を追加しました。

[ default_conf ]

ssl_conf = ssl_sect

[ssl_sect]

system_default = ssl_default_sect

[ssl_default_sect]
MinProtocol = TLSv1
CipherString = DEFAULT:@SECLEVEL=1

この辺りは詳しくないので間違っていたら教えていただきたいです。

1passwordのcliをubuntuで使えるようにした

wsl2で作成したubuntu環境に1passwordのcliツールを使用できるようにしました。セットアップに関してはこちらの公式ドキュメントを参照しました。

まず最初にubuntu用の1password cliをダウンロードしました。最新バージョンの確認はこちらで行いました。

> wget https://cache.agilebits.com/dist/1P/op/pkg/v1.12.2/op_linux_386_v1.12.2.zip
# zipを展開する
> unzip op_linux_386_v1.12.2.zip

電子署名の確認をしました。

> gpg --receive-keys --keyserver hkps://keyserver.ubuntu.com 3FEF9748469ADBE15DA7CA80AC2D62742012EA22
gpg: /home/yamakawa00/.gnupg/trustdb.gpg: trustdb created
gpg: key AC2D62742012EA22: public key "Code signing for 1Password <codesign@1password.com>" imported
gpg: Total number processed: 1
gpg:               imported: 1
> gpg --verify op.sig op
gpg: Signature made Wed Oct  6 06:27:52 2021 JST
gpg:                using RSA key 3FEF9748469ADBE15DA7CA80AC2D62742012EA22
gpg: Good signature from "Code signing for 1Password <codesign@1password.com>" [unknown]
gpg: WARNING: This key is not certified with a trusted signature!
gpg:          There is no indication that the signature belongs to the owner.
Primary key fingerprint: 3FEF 9748 469A DBE1 5DA7  CA80 AC2D 6274 2012 EA22

PATHが通っているディレクトリに op ファイルを移動しました。

> sudo mv op /usr/local/bin

バージョンを確認しました。

> op --version
1.12.2

サインインをしました。

> op signin example.1password.com wendy_appleseed@example.com

これで初期設定は完了しました。

ネットワーク内にあるNASの共有フォルダが開けない

自作したPCの設定をしていてネットワークの中にあるNASを読み込んでくれないのでいろいろ調べました。

BuffaloのNAS Navigatro2は認識してくれるけど、共有フォルダを認識してくれません。ラップトップだとWi-Fi経由で共有フォルダが見れます。

f:id:leokun0210:20211008140216p:plain

まずSMBをチェックしました。下記のPDFの手順通り「SMB 1.0/CIFS クライアント」を有効にしました。しかし結果は変わりません。

www.iodata.jp

つぎに「Windows 資格情報の管理」でサーバーの認証情報を設定しました。すると共有フォルダにアクセスできるようになりました。

www.atchfactory.com

f:id:leokun0210:20211008140758p:plain