arashi1977さんの助け合いフォーラム投稿一覧

助け合いフォーラムの投稿
2024/04/02 コメント
ebtablesのfilter/ACCEPTとbroute/ACCEPTの違いの有無について
同じものを二重に実装するのは不毛ですしそもそもテーブルが異なる時点で異なるものですが、そういう話で良いですか?
2024/04/02 コメント
ebtablesのfilter/ACCEPTとbroute/ACCEPTの違いの有無について
言葉足らずでした。「同じ動作の様」というのがどういうものを意図されているのかがわからないので、「iptablesに似たものですか?」という意味かと思って「間違ってはないと思います」とコメントしています。
2024/04/02 返信
ebtablesのfilter/ACCEPTとbroute/ACCEPTの違いの有無について

間違ってはないと思いますが、質問の趣旨は何ですか?

2024/04/02 返信
「AWS Direct Connectでバックアップ環境のVPCとオンプレミスをセキュアに接続する」のほうが・・・

設問からは

同社はデータセンターの自然災害時の影響を考慮して、AWSを利用した災害復旧(DR:Disaster Recovery)を計画している。

のですから、仮にデータ同期やオンプレミスのシステム停止時切り替えのためにDirectConnectで接続していたとしても、そもそもデータセンターが自然災害により使用不可能な(DirectConnectエンドポイントが機能しない)状態を想定しているので

障害時にAWSに切り替えるには、通常はDirect Connectでつないでいるのが一般的な構成かと思います。

だと、「どこのエンドポイントからAWSのバックアップ環境にDirectConnect接続するの?」って観点が不足しているのではないかなと思います。

2024/04/02 コメント
動的inodeのファイルシステムでもハードリンク作成はディスク容量を消費しないのか?
詳細な補足ありがとうございます。 > もっと極端に、これと同じ実体に対するハードリンクを、全く別々の場所に別々の名前で、さらに100万個作った場合は?、、、と考えていくと、 > 各リンクのパスに関する情報はどうしたって保持しておく必要があり、いくらなんでも0Byteというわけにはいかないと思うのです。 > この理屈でいくと、静的inodeでも動的inodeでも、ハードリンクを何百万個、何千万個作ってもハードディスクの容量が一切消費されないというのはありえないのでは?というのが素朴な疑問となりました。 なるほどと思い上記同様の環境で検証しましたが、面白いですね。少なくともbtrfsではmiki_yさんの想像されたのに近しい挙動をしていました。なぜそうなるのかやXFSなど他の動的inodeのファイルシステムだとどうなるのかは暇があれば調べてみたいなと思いました。 とはいえ > 試験対策上は細かいことは考えず容量消費がないと覚えておけばよいと割り切るしかないのは重々分かっていますがどうも引っかかります。 が全てですよね。試験では「ハードリンクとはどういうものか」が問われていると考えられますので、「動的inodeのファイルシステムでリンク先が重複する大量のハードリンクを作成した場合」という特殊な例を前提にはしていないと判断するべきかなぁと思います。
2024/03/27 返信
ホスト名とは

DNSに関する用語は定義がはっきりしていなかったりするので曖昧に表現すると齟齬が発生する元なので難しいところです。

ここでいう「ホスト名」は「(完全修飾)ドメイン名」の意味で使われていると思われます。逆に、I-chan0234さんがいう「ドメイン名」が完全修飾ドメイン名(FQDN)を意図しているのであれば同一視しても良いと思います。

まぁ問題的には「IPアドレスではなく、名前」というぐらいの意味で理解しても間違いではなさそうです。

2024/03/26 返信
解説について

本来NICから送信可能な最大サイズを超えたデータが検出されたという意味ですが、そんなの送ってくる時点で送出側のNICが上限以内に収めることができない(正しく動作できてない)と考えられるからですね。
https://www.cisco.com/c/ja_jp/support/docs/switches/catalyst-6500-series-switches/12027-53.html#toc-hId--939937013

ジャイアント フレームとは、イーサネットの最大フレーム サイズを上回る(1518 バイト以上)、不正な FCS を持つフレームのことです。

2024/03/26 返信
輻輳回避と輻輳管理について

参考の【輻輳管理】と【輻輳回避】の項目は確認済みですか?

2024/03/24 コメント
動的inodeのファイルシステムでもハードリンク作成はディスク容量を消費しないのか?
意図を補足いただきありがとうございます。 ↑の以下の部分では「動的inodeのファイルシステムでもハードリンク作成はディスク容量を消費しないといえる」ように見えるのですが、そういうお話であっていますか? > ・ファイルシステムの空き容量に変化があるか確認する(変化なく892828のまま) 解説にもあるとおり「同じ実体を参照するハードリンクは同じinode番号を持」つので、inodeテーブル上の情報が増えたり減ったりするわけではなく、「同じinode番号(ファイルシステム上の同じデータの位置)」を別の名前で参照しているだけですから、動的inodeであろうがなかろうが容量消費しないということだと理解しています。
2024/03/24 返信
どう考えても答えが違う。

解説のこの部分についてはcopilotは何か言っていましたか?

また下図の通り、インターフェース(GigabitEthernet0/0)の帯域幅は「bandwidth 100000」によって「100000Kbps」へ変更されています。

2024/03/24 返信
問題文について

うーん…なんか表現の問題な気がしますが

ソリューションアーキテクトは複数のEC2インスタンスで動作するサーバーのストレージについて検討している。

これ、「サーバー」じゃなくて「サービス」とかなら意味がわかるんですよねぇ。
割と「サーバー = EC2インスタンス」な関係だと思うので、Kurojunさんのおっしゃる通り「1つのストレージで複数のインスタンスにアタッチできるもの」という条件にもよめます。でも次の

サーバーのデータは複数のEC2インスタンスにコピーして保存し、データ損失に耐えられるようにする。

からすると「データは複数のインスタンスにコピーされ(複製がある状態にして)データ損失に耐えられる」ためには「1つのストレージ」だと達成できないのですよね。なので「マルチアタッチ」も不適切かなと。

そういうことからすると単純にIOPSだけ見てインスタンスストアってのは導ける気もしますが、なんかうーんって感じますね…

2024/03/20 返信
動的inodeのファイルシステムでもハードリンク作成はディスク容量を消費しないのか?

自分の読解力の問題ですみません。質問の内容がよく理解できませんでしたが、こういう検証をしたいがうまくいかないので質問したという意図で良いのでしょうか?

・動的inodeのファイルシステム(例:Btrfs)の準備

# dd if=/dev/zero of=/tmp/btrfs.img bs=1M count=1000
1000+0 records in
1000+0 records out
1048576000 bytes (1.0 GB, 1000 MiB) copied, 2.65423 s, 395 MB/s
# mkfs.btrfs /tmp/btrfs.img
btrfs-progs v5.16.2
See http://btrfs.wiki.kernel.org for more information.

NOTE: several default settings have changed in version 5.15, please make sure
      this does not affect your deployments:
      - DUP for metadata (-m dup)
      - enabled no-holes (-O no-holes)
      - enabled free-space-tree (-R free-space-tree)

Label:              (null)
UUID:               d8471c85-31fe-4aa8-b94c-83c30de9637a
Node size:          16384
Sector size:        4096
Filesystem size:    1000.00MiB
Block group profiles:
  Data:             single            8.00MiB
  Metadata:         DUP              50.00MiB
  System:           DUP               8.00MiB
SSD detected:       no
Zoned device:       no
Incompat features:  extref, skinny-metadata, no-holes
Runtime features:   free-space-tree
Checksum:           crc32c
Number of devices:  1
Devices:
   ID        SIZE  PATH
    1  1000.00MiB  /tmp/btrfs.img

# mount -t btrfs /tmp/btrfs.img /mnt
# mount | grep /mnt
/tmp/btrfs.img on /mnt type btrfs (rw,relatime,ssd,space_cache=v2,subvolid=5,subvol=/)
# df /mnt
Filesystem     1K-blocks  Used Available Use% Mounted on
/dev/loop2       1024000  3616    904192   1% /mnt

・何か元になるファイルを用意する(今回はカーネルイメージ)

# cp /boot/vmlinuz /mnt
# ls /mnt
vmlinuz
# ls -l /mnt
total 11364
-rw------- 1 root root 11634760 Mar 20 14:25 vmlinuz

・ファイルシステムの空き容量を確認する(今回は892828)

# sync
# df /mnt
Filesystem     1K-blocks  Used Available Use% Mounted on
/dev/loop2       1024000 14980    892828   2% /mnt

・ハードリンクを作ってみる(今回はコピーしたカーネルイメージを hardlink というファイルにリンク)

# ln /mnt/vmlinuz /mnt/hardlink
# ls -l /mnt
total 22728
-rw------- 2 root root 11634760 Mar 20 14:25 hardlink
-rw------- 2 root root 11634760 Mar 20 14:25 vmlinuz

・ファイルシステムの空き容量に変化があるか確認する(変化なく892828のまま)

# sync
# df /mnt
Filesystem     1K-blocks  Used Available Use% Mounted on
/dev/loop2       1024000 14980    892828   2% /mnt

・ハードリンクが同じinodeを使用しているかを確認する(どちらも 257)

# stat /mnt/vmlinuz
  File: /mnt/vmlinuz
  Size: 11634760  	Blocks: 22728      IO Block: 4096   regular file
Device: 2eh/46d	Inode: 257         Links: 2
Access: (0600/-rw-------)  Uid: (    0/    root)   Gid: (    0/    root)
Access: 2024-03-20 14:25:41.540446902 +0900
Modify: 2024-03-20 14:25:41.556447169 +0900
Change: 2024-03-20 14:26:58.613713062 +0900
 Birth: 2024-03-20 14:25:41.540446902 +0900
# stat /mnt/hardlink
  File: /mnt/hardlink
  Size: 11634760  	Blocks: 22728      IO Block: 4096   regular file
Device: 2eh/46d	Inode: 257         Links: 2
Access: (0600/-rw-------)  Uid: (    0/    root)   Gid: (    0/    root)
Access: 2024-03-20 14:25:41.540446902 +0900
Modify: 2024-03-20 14:25:41.556447169 +0900
Change: 2024-03-20 14:26:58.613713062 +0900
 Birth: 2024-03-20 14:25:41.540446902 +0900
2024/03/20 コメント
COLD HDD
> OSのインストールをインストールするという条件が、その選択肢の除外条件になるのですね。 まぁそうですね。条件を考えると - OSをインストールして使う=ランダムアクセスがそれなりにあるので、st1(シーケンシャル特化)は期待する最低限の性能が出ないと考えられるのでだめ。sc1ではそもそもOSインストールがサポートされていない。 - 高性能は不要=io1ではコスト面でも無駄 という消去法が簡単かと思います。 sc1がOSインストールできない点についてはこちらに記載があります。 https://aws.amazon.com/jp/ebs/cold-hdd/ > 起動可能な sc1 ボリュームはサポートされていません。 ちなみにCOLD HDDについて余談ですが、物理インフラを触らないとあまりイメージがつかないかもなのですが、「コールドスタンバイ(ホットスタンバイの対比)」とか「コールドスワップ(ホットスワップの対比)」とかの用語があります。この場合の「コールド(COLD)」は「停止(電源が入っていない)状態」という意味を持っています。OSを入れて使う環境のストレージが「基本的に停止状態なHDD」だとおかしいよね?っていうのは手元のPCなどでもイメージしやすいかと思います。
2024/03/19 コメント
設問の設定について
> 「show ip interface brief」の表示結果で「Tunnel0」が「up/up」になっている=トンネルは構築できているという認識でよいのでしょうか > ※実際に通信がトンネルを通るか(GREでカプセル化されるか)は別の問題として こちらに言及してませんでした。 ご認識の通り、Tunnelがup/upになっていることと実際に通信がトンネルを通るかは別の問題です。 物理インターフェースがup/upになっていても、IPアドレス付与していなければどことも通信できないというのと同じような話ですね。
2024/03/19 コメント
設問の設定について
> R1,R3にそれぞれ適当なセグメントを持たせてPCを接続 その経路のネクストホップはどこになってますか? TunnelインターフェースはOSPFコストがかなり高く初期設定されているので、明示的に通るように指定しないと勝手にはTunnel通らないですよ。 ``` R3#show ip ospf interface brief Interface PID Area IP Address/Mask Cost State Nbrs F/C Tu0 1 0 13.13.13.3/24 1000 P2P 1/1 Gi0/0 1 0 192.168.23.1/24 1 BDR 1/1 ```
2024/03/18 返信
設問の設定について

tunnel destination への到達性があるのでトンネル構築されますよ。

2024/03/18 コメント
サブネット数について
はい。正答選択肢の通りですね。
2024/03/18 返信
サブネット数について

ネットワークのアドレス設計のためですね。簡単な例を出すと

  • 県(47)単位に個別のアドレスを割り当てたい
  • 県に割り当てたネットワークアドレスの範囲内で、市町村単位にネットワークを分割する(北海道は179市町村あるんですね https://uub.jp/rnk/nctv.html
  • 各市町村には最低でも10台分のホストアドレスが必要
  • 規模の大きい自治体には潤沢に、部署単位でも割り当てられるようにしたい

みたいな条件が設定された時に、「市町村単位」や規模の大きい自治体の部署ごとだったりがサブネットになりますが、その場合にどのぐらいの範囲のアドレスを割り当てるようにすべきかといったことを考える際に必要になる知識です。
構築や設計をしないのであれば知らなくてもそんなに困りませんが、そういう領域に関わるのなら必須ですね。

2024/03/17 返信
ホスト名の指定

はい、その通りです。コマンドリファレンスにも明確に記載があります。
https://www.cisco.com/c/en/us/td/docs/ios-xml/ios/interface/command/ir-cr-book/ir-t2.html#wp9179171580

tunnel destination {host-name | ip-address | ipv6-address | dynamic}

2024/03/17 返信
reachabilityとは

IP reachabilityがあるかどうかではなく、経路が存在するかどうかだからですね。
設問の設定は

R1(config)#track 10 ip route 192.168.2.3 255.255.255.255 reachability

なので、 192.168.2.3/32 の経路が存在するかどうかをチェックしています。提示された 192.168.2.0/24 をOKにしたいのであれば

R1(config)#track 10 ip route 192.168.2.0/24 reachability

とする必要があります。

2024/03/17 返信
シーケンスのcurrvalについて

つまり、setvalの直後に(nextvalを行わずに)currvalを呼び出すとエラーになるという意味だと思いますが、問題35306では、setvalの直後に(nextvalを行わずに)currvalを呼び出すと値が取れると書いてあります。

これは条件を正しく一致させてないですね。シーケンス作成直後の状態とsetval()直後の状態は同じではありません。

前者(問題ID:35022)だとこういう話ですよね。

$ docker run --name postgres13 -e POSTGRES_PASSWORD=mysecretpassword -d postgres:13
5eae36f2d752bd9e7de8f351e4f80e8ed7e0cdf6c73c0a71516b2014641ba52a
$ docker exec -it postgres13 psql -U postgres
psql (13.14 (Debian 13.14-1.pgdg120+2))
Type "help" for help.

postgres=# CREATE SEQUENCE q35022;
CREATE SEQUENCE
postgres=# select currval('q35022');
ERROR:  currval of sequence "q35022" is not yet defined in this session

作成直後のシーケンスは(START句で指定していない限り)初期値が存在しないので、そのままだと「何を返せばいいかがわからないので現在値を取得しようとするとエラーになる」ものです。なお、その場合でも「nextval()」をすることで初期値(デフォルトの最小値)が定義されるので、その後はcurrval()が利用可能になります。

postgres=# select nextval('q35022');
 nextval
---------
       1
(1 row)

postgres=# select currval('q35022');
 currval
---------
       1
(1 row)

問題ID:35306の場合はこうですね。最初にsetval()で値をセットしているのでnextval()しなくても値がすでに存在するので、そのままcurrval()で値が取れます。

postgres=# CREATE SEQUENCE sample_seq CACHE 5 NO CYCLE;
CREATE SEQUENCE
postgres=# SELECT setval('sample_seq', 100);
 setval
--------
    100
(1 row)

postgres=# SELECT currval('sample_seq');
 currval
---------
     100
(1 row)

setval()が初期値をセットしているので、setval()する前だと問題ID:35022と同じことが起きます。

postgres=# CREATE SEQUENCE sample_seq_2 CACHE 5 NO CYCLE;
CREATE SEQUENCE
postgres=# SELECT currval('sample_seq_2');
ERROR:  currval of sequence "sample_seq_2" is not yet defined in this session
postgres=# SELECT setval('sample_seq_2', 200);
 setval
--------
    200
(1 row)

postgres=# SELECT currval('sample_seq_2');
 currval
---------
     200
(1 row)
2024/03/16 返信
COLD HDD

・OSをインストールして使用する

という条件なので、COLD HDDだとそぐわないように思います。
OSは起動時にかなりのファイルにアクセスがあったり、ログ書き出しやら色々稼働中もアクセスがあるので「利用頻度の低い」アクセスとはならない認識なのですが

テスト環境とアプリケーションの動作確認目的では違うと思います。

について、COLD HDD 対 汎用SSD(gp3)の比較で「どう考えても」というのはどのあたりの話になるのでしょうか?

2024/03/16 返信
経路を表すコード

はい。R2にとってはただのOSPFネイバなので通常通りの見え方になります。

2024/03/10 返信
パッシブインターフェースって結局なんなんだ

パッシブ(passive)だけ考えるとわかりにくいんですよね。その逆のアクティブ(active)も意識するとイメージしやすいかもです。
単純に英語の意味で取れば「passive:受動的」「active:能動的」なので、passive interfaceとは「自分から何かするわけではない」インターフェースと理解できます。ということは「HelloやLSAの送信はしない」けれど「OSPFドメイン内には存在する」インターフェースだと言えます。OSPFドメイン内に存在するので、同じOSPFプロセスに属していればそのインターフェースのリンク、ネットワーク情報をアドバタイズする対象にできるんですね。

また、ルート情報をアドバタイズする(それなりの負荷がかかる)ならばそもそもパッシブインターフェースの設定をするメリットはなんなのでしょうか。

これは設問の図が答えですね。OSPFのパケットを送っても無視するだけの相手しかいないところにHello/アップデートパケットを投げる意味は全くないから送らないようにする、です。

戻る