network
ssh で v6 アドレスをv4 へポートフォワーディングを試してみた。 ssh で v4-v4 のポートフォワーディング ssh my-server -L8080:192.168.1.1:80 ssh で v4-v6 のポートフォワーディング v4 のときと同じで、v6 アドレスを [::1] のように[ ] で囲むだけ。 s…
nft によるMSQUERADE(iptables MASQUERADEからの移行) iptablesでマスカレード(またはSNAT)は古くから行われている枯れた手法。これをnft(nftables)に書き換える場合のメモ 次のような、マスカレード(NAT)をiptablesで追記しているとする。 iptables -…
NTT のホームゲートウェイのVPNサーバー設定 NTTのホームゲートウェイにはVPNサーバ機能がついている機種があり(PR-500系)、L2TP/IPsecで接続することができる。 ユーザを作って、共有鍵を取得しておく iOSのVPN画面から 接続先・ユーザ名・パスワード・IP…
OpenWrt からL2TP/IPsecにつなぐ 接続相手は、NTT フレッツ HGW(RP-500MI)のVPNサーバー。 基本的にはNTTのHGWにUbuntuでL2TP/IPSecで繋いだのと同じ法 インストール opkg install xlt2ptd strongswan 動作確認したときのインストール状態 strongswanは次の…
NTT フレッツ HGW(RP-500MI)のvpnサーバーに ubuntu からつなぐ NTT が提供する ホームゲートウェイ・光コンバータ一・ひかり電話の一体型機器にはVPNサーバー機能がある。 NTT 東 https://web116.jp/shop/hikari_r/guide/500ki/1-r/m01_m35.html NTT西 http…
L2TP/IPsec について L2TP/IPSec と一言でいっても、Linux上では、次の3つの機能によって成り立ってる。 ipsec ( ikev1 ) xl2tpd pppd このうち、xl2tpd + pppd はペアで1つのPPP接続(≒vpn)を作る、ipsecは暗号化である。ipsecで指定したIP/ポートを暗号化…
パケットがトンネルに入るか否かを確認する。 xl2tpd / ipsec で ipsec と l2tpd が併せて語られる記事をいっぱい見かけたけど、ipsec は ipsec で単体で、独立して動作しているよね?って思ったので、念のための念のために確認した。 ipsec を準備する 2台…
入ってきたNICから戻らない。 listen 0.0.0.0 していると、入ってきたパケットが応答で出ていくとき、別の経路を通ってしまう。 TCPならコネクション状態でなんとかなるが、UDPなら如何ともしがたい。これを単純になんとかしたい。 今回はWireguardで別経路…
UDP にコネクションはあるのか UDPはステートレスと、教科書では習うが。実際にはUDPはステートがある。 conntack で見てもわかるのですが。ss でパケットがESTABLISHEDになってたりする。 実験環境 最初に実験環境を整理しておく ネットワーク構成を作る。 …
nftablesでルーティングが効かかないことがあった。 ポリシ・ルーティングをしていて、ルーティングされないので頭を悩ませてた。しらべたら、 type routeを使うのが必須であった。 パケットを転送するときは、ポリシルーティングが効く、しかし、ルーティン…
linuxで単純なルータ機能を作る マスカレードやDNAT/SNATをして、ルータ機能を作ってみる。 先のiptablesと比較してnft でどうなるのかを見たいので、試した。 ネットワーク構成図 以下のようなネットワーク構成を作る 実際に作った構成 ipコマンドには netn…
iptablesでルータを作る Ubuntu Linuxでiptablesを使って、ネットワークの練習をする。WEBサイトに潤沢な検索結果があってとくにメモを残してない。 いつもiptablesを検索し直してて非効率なので、ここらで一旦まとめ直しておく。 今回は、lxc ホストと ip n…
MAC Addressを変更したい 一時的にMacAddressを変更したいとき。 INF=enp1s0f0 sudo ip link set dev $INF down sudo ip link set dev $INF address 6c:4b:90:d8:c3:39 sudo ip link set dev $INF up 一時的に変更できたら問題解決ってことが多いと思う。 ip…
ubuntu が起動時にエラーを吐いてネットワーク待ちで時間がかかる。 Failed to start Wait for Network to be Configured. ネットワークを見てみる。 基本的に、networkdに管理させてないが、念のために確認する。 takuya@:~$ networkctl IDX LINK TYPE OPER…
ホスト名の指定だけでIPがわかるようにしたい DHCPサーバーとDNSサーバーに、ローカルドメイン名は設定済み windowsでも名前解決をしたい ホスト名だけで行けそう ping ホスト名で、検索されてIPアドレスが分かるようになった。
linux(ubuntu/debian)ローカルドメインを使いたい ローカルドメイン名は基本的に、resolv.confを使います。 resolv.conf domain lan search lan nameserver 127.0.0.1 search を書けば別ホスト名を探しに行くとき、suffixを入れてくれます。 domain を書けば…
macOSでもローカルドメインが使いたい mac の場合、次のコマンドでサクッと作れる。 networksetup -listallnetworkservices networksetup -setsearchdomains wg0 example.lan. networksetup -getsearchdomains wg0 example.lan. 設定からもできる。 macOSの…
wireguard接続時ローカルドメインをつかいたい できます。 wireguardの接続設定を書きます。 DNS=192.168.1.1, local2 , lan3 , example.tld DNSのあとに、カンマ区切りで列挙すると、ローカルドメインとして機能します。 記入例 参考資料 https://rakhesh.c…
unbound でローカルPCの名前を解決 unboundはroot.hint から調べるけど、ローカルPCについては除外したい。 ローカルなドメイン名だけローカルPCの名前を解決したい。 127.0.0.1 で unboundが listen してるとして 外部向けは、rootから dig dns.google @127…
debian で br0 をつくり、IPを複数割り当てたい。 debian で eth0 を bridge にして bridge に複数のIPを割り当てて行ききたい 完成形をこんな感じにする takuya@:~$ ip a br0 br0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000 link/ether be</broadcast,multicast,up,lower_up>…
gretap を作る GRE Tap でイーサネット・フレームを転送するVPNを作ってみたい。 wg0 でL2-VPNはできると思う。 wg に L2-VPN機能がないので、 wg 上に ip bridge で gre tap を構成すればいい。 wireguardではL2はサポートされていなので、WG上にGRETAPでL2…
ip コマンドを使って arp キャッシュを表示する arp コマンドが無い。 L2のARPのキャッシュを表示するのは、arp コマンドを使うが、現代では初期インストールされていない。 ip neigh を使う。 ip neigh を使ってneighbor(近隣)を調べられる。arp は無いが代…
MTUの値 wireguard のMTUの値を調べた。 1420 = ip6 to ip6 で wireguardしたとき 1440 = ip4 to ip4 で wireguardしたとき パケットはこんな感じになりますね。 wireguardのパケットについては IP以外に、40バイトを使います。 https://lists.zx2c4.com/pip…
wireguard は便利なんだけどwg-quickに問題が。 wireguard は手軽でそこそこ速く、使いやすい。iOSからも使えるので、ここ一年CellularData通信は、ずっとwireguardしてる。 ほとんどの人は、wg-quick を使ってると思う。でも、私は今まで使ってない。 wg-qu…
netplan でDHCP設定すると metric ばぶっ壊れる件 表題のとおりです。 問題点 RaspberryPi4の、eth0 と wlan0 が接続されたUbuntuシステムで、netplan を設定するとmetric がおかしい。 パケットがすべてWif( wlan 0 ) 経由になってしまう。 原因 eth0 と wl…
macvlan on macvlan は動くのか これを見ていて、ふと愚問が湧いた。 ネストしたらどうなるんだろう。 ネストできるのか興味が出たので試した。 作れる。まじか。 macvlan3 on eth0 sudo ip link add macvlan4 link macvlan3 type macvlan mode bridge macvl…
macvlan on macvlan ができるのなら。lxc に追加してみる。 linuxにmacvlanを追加するコマンド iproute を使ってmacvlan や macvtapを追加する場合は次のようにする。 ip link add link eth0 name macvlan0 type macvlan ip link add link eth0 name macvtap…
networkd で VLAN インターフェースを作ろう eth0 の設定に書いた。タグVLANをリッスンするインターフェースを作ろう。networkd の設定で。 networkd の設定は、3つファイルを使った。 systemd-networkd は設定がバラけるので管理が面倒です。そのうちnetpl…
以前の資料 macvtap でできた仮想マシンとホストと通信してみる。macvlan/macvtap - それマグで! macvlan を複数作りたい。 macvlan を複数作りたい。デバイスを区別して別物として扱って便利に使いたいのです。 /etc/systemd/network の中身を弄くります。…
Linux で eth0 を使わせる enp3s0 のような名前が不便だった。 SSDを載せ替えたり、ネットワークインタフェースを切り替えたりするとどうしても思ったようにならない。マイグレーション・サーバ移転で面倒が起きる。 もう、ネットワーク・インタフェースが1…