arashi1977さんの助け合いフォーラム投稿一覧
設問では
サーバ上で以下のコマンドを使用して公開鍵認証用の鍵ペアを作成した。
とあるので、「サーバに公開鍵と秘密鍵のペアがある状態」であり、「クライアント(サーバに接続する側)には対応する公開鍵も秘密鍵も "無い"」んですよね。そうすると、公開鍵認証したくてもクライアントの情報をサーバ側は知りませんし、クライアントはサーバに接続するための秘密鍵を持っていないので認証してもらえないんですよね。
なので「サーバで作ったペアのうち、秘密鍵をクライアントに持っていく」必要があるんですね。
file1の方がfile2より更新日時が古いと思うのですがそう思いました。
えっと、設問の出力からすると
Jan 11 23:52 /home/file1
Jan 11 19:21 /home/file2
と、file1の方が約4時間半「後」に作成されているので、新しいはずなのですが…
ある書籍には0126と記載されていました。
「ある書籍」の話についてはその書籍の発行元に聞いてもらうしかないとして。
正しくは0~126がクラスAの範囲でお間違いないのでしょうか?
クラスの定義はRFC 791のSection 3.2に記載があります。
Address Formats:
High Order Bits Format Class
--------------- ------------------------------- -----
0 7 bits of net, 24 bits of host a
そして、127.0.0.0/8についてはRFC 1122のSection 3.2.1.3に記載があります。
3.2.1.3 Addressing: RFC-791 Section 3.2
There are now five classes of IP addresses: Class A through
Class E. Class D addresses are used for IP multicasting
[IP:4], while Class E addresses are reserved for
experimental use.
(略)
We now summarize the important special cases for Class A, B,
and C IP addresses, using the following notation for an IP
address:
(略)
(g) { 127, <any> }
Internal host loopback address. Addresses of this form
MUST NOT appear outside a host.
似た記述としてRFC 6890 Section 2.2.2がありますね。
+----------------------+----------------------------+
| Attribute | Value |
+----------------------+----------------------------+
| Address Block | 127.0.0.0/8 |
| Name | Loopback |
| RFC | [RFC1122], Section 3.2.1.3 |
| Allocation Date | September 1981 |
| Termination Date | N/A |
| Source | False [1] |
| Destination | False [1] |
| Forwardable | False [1] |
| Global | False [1] |
| Reserved-by-Protocol | True |
+----------------------+----------------------------+
[1] Several protocols have been granted exceptions to this
rule. For examples, see [RFC4379] and [RFC5884].
Table 4: Loopback
ざっくりまとめてしまうと「クラスAの最後の8bit分(先頭が10進数で127)となるアドレス範囲はホスト内部のループバックアドレスとして使用する」と規定されているだけで「クラスAに属さない」とはなっていません。(逆に127.0.0.0/8がクラスAではないのであればどのクラスに属するのかが知りたいなと思いますね)
任意の1文字とあるのに99と2文字あるのはなぜでしょうか。
この理屈でいくと、「0123499(1234の後ろに2文字)」だけじゃなくて「123445(1234の後ろに2文字)」も正しくないと言う話になると思うのですが、こちらには疑問はなかったのでしょうか?
dandyleoponさんもおっしゃっている通り「.は任意の1文字であり、 1234{任意の1文字} と言う形が含まれる行がマッチする」ので
1234: マッチしない(1234の次に何もない)
1234a: マッチする(1234の次に1文字=aがある)
01234: マッチしない(1234の次に何もない)
123456: マッチする(1234の次に1文字=5があり、その後ろに1文字=6がある)
0123499: マッチする(1234の次に1文字=9があり、その後ろに1文字=9がある)
と言うだけの話ですよ。
これが全てですが
問題ID : 21585 でコントローラがトラフィック調整できると書いてあり、
【SDNコントローラでトラフィックの状況などに合わせて動的にネットワークトポロジを変更できる】
-> トポロジを変更することでトラフィックを調整していると認識しております。問題ID : 16174 では、増減するトラフィックの調整は無理みたいなことが書いてあり、
【ネットワーク上のトラフィックはコントローラでは直接制御できませんので、誤りです。】
【ただし、SDNであればトラフィックの状況によって迂回ルートにトラフィックを
切り替えるようなプログラムを作成し、柔軟に機器の設定変更を行うことは可能】
コントローラーは制御を担うもの、その制御を受けるものがスイッチやルータなどの「トラフィックを扱う機器」です。
たとえ話をするなら「鉄道の制御室」がコントローラーで、各駅や線路上にある「信号機」がルータやスイッチに該当します。で、トラフィックは「列車」のことです。制御室が直接列車を制御することはありませんが、列車は信号を見て進行したり停止したり減速したりしますよね。
災害や人身事故などでトラフィックをどう裁くかは現場の駅員だけでは判断できないので、制御室でダイヤ(トポロジ)組み直したりしてトラフィックを迂回させたりしますよね。
そんな感じです。
問題文って
以下の実行結果より、時刻同期先になっているアドレスはどれか
のことですよね?この中に
問題文には"”ついてました。
と言うことですか?(それともMarkdown書式で「*
」が消えているだけ?)
もし *
のことを言われているのであれば「*
が(IP)アドレスに含まれるのか」ということかと思いますが、IPアドレスには「*
」は使用できないので付けることで不正解となるのは問題ないと思います。
また、問題IDまでは確認してませんが、「*
は時刻同期先として選択している」と言う意味の識別情報ですので、同期先のアドレス以外の情報も含めているという意味でも不正解になるかなと思います。
「grep -E 'bu?!' test.txt」
のことですかね?
「bu?!
」は「拡張正規表現」を使って記載された文字列なので、grepは「拡張正規表現」として理解している、と言うだけですよ。
ちなみに、
シングルクォートで囲むと全てが文字列扱い
と言うのは、grepにとってではなく「シェル(多くはbash)」にとってなので、「誰がどう扱うことでどう見えるのか」をきっちり理解しておくのが良いと思います。
まず「何を条件に指定できるのか」と言うのが根本にあるのですよね。IPパケットのレベルで考えるのなら「IPヘッダ」ですし、TCP/UDPの場合は「TCP/UDPヘッダ」です。その中に何が情報としてあるのか、と言うのがわかっていればそんなに悩むことはありません。
(まぁ基本として「送信元」「宛先」アドレスが条件に含まれるのでここでは触れません)
IPプロトコルの場合は
Router(config)#access-list 100 deny ip any any ?
dscp Match packets with given dscp value
fragments Check non-initial fragments
log Log matches against this entry
log-input Log matches against this entry, including input interface
option Match packets with given IP Options value
precedence Match packets with given precedence value
time-range Specify a time-range
tos Match packets with given TOS value
ttl Match packets with given TTL value
<cr>
とありますが、これは https://ja.wikipedia.org/wiki/IPv4#%E3%83%91%E3%82%B1%E3%83%83%E3%83%88 にあるようにIPヘッダに含まれている情報にフィルタ条件が指定できることがわかります。
他も同じことですね。上位層プロトコルというかTCP/UDP/ICMPヘッダにある情報がなんでも指定できると言うだけです。
Router(config)#access-list 100 deny tcp any any ?
ack Match on the ACK bit
dscp Match packets with given dscp value
eq Match only packets on a given port number
established Match established connections
fin Match on the FIN bit
fragments Check non-initial fragments
gt Match only packets with a greater port number
log Log matches against this entry
log-input Log matches against this entry, including input interface
lt Match only packets with a lower port number
neq Match only packets not on a given port number
option Match packets with given IP Options value
precedence Match packets with given precedence value
psh Match on the PSH bit
range Match only packets in the range of port numbers
rst Match on the RST bit
syn Match on the SYN bit
time-range Specify a time-range
tos Match packets with given TOS value
ttl Match packets with given TTL value
urg Match on the URG bit
<cr>
Router(config)#access-list 100 deny udp any any ?
dscp Match packets with given dscp value
eq Match only packets on a given port number
fragments Check non-initial fragments
gt Match only packets with a greater port number
log Log matches against this entry
log-input Log matches against this entry, including input interface
lt Match only packets with a lower port number
neq Match only packets not on a given port number
option Match packets with given IP Options value
precedence Match packets with given precedence value
range Match only packets in the range of port numbers
time-range Specify a time-range
tos Match packets with given TOS value
ttl Match packets with given TTL value
<cr>
Router(config)#access-list 100 deny icmp any any ?
<0-255> ICMP message type
administratively-prohibited Administratively prohibited
alternate-address Alternate address
conversion-error Datagram conversion
dod-host-prohibited Host prohibited
dod-net-prohibited Net prohibited
dscp Match packets with given dscp value
echo Echo (ping)
echo-reply Echo reply
fragments Check non-initial fragments
general-parameter-problem Parameter problem
host-isolated Host isolated
host-precedence-unreachable Host unreachable for precedence
host-redirect Host redirect
host-tos-redirect Host redirect for TOS
host-tos-unreachable Host unreachable for TOS
host-unknown Host unknown
host-unreachable Host unreachable
information-reply Information replies
information-request Information requests
log Log matches against this entry
log-input Log matches against this entry, including input
interface
mask-reply Mask replies
mask-request Mask requests
mobile-redirect Mobile host redirect
net-redirect Network redirect
net-tos-redirect Net redirect for TOS
net-tos-unreachable Network unreachable for TOS
net-unreachable Net unreachable
network-unknown Network unknown
no-room-for-option Parameter required but no room
option Match packets with given IP Options value
option-missing Parameter required but not present
packet-too-big Fragmentation needed and DF set
parameter-problem All parameter problems
port-unreachable Port unreachable
precedence Match packets with given precedence value
precedence-unreachable Precedence cutoff
protocol-unreachable Protocol unreachable
reassembly-timeout Reassembly timeout
redirect All redirects
router-advertisement Router discovery advertisements
router-solicitation Router discovery solicitations
source-quench Source quenches
source-route-failed Source route failed
time-exceeded All time exceededs
time-range Specify a time-range
timestamp-reply Timestamp replies
timestamp-request Timestamp requests
tos Match packets with given TOS value
traceroute Traceroute
ttl Match packets with given TTL value
ttl-exceeded TTL exceeded
unreachable All unreachables
<cr>
そして、OSI 7階層モデルで考えると「他のレイヤの情報は見えない」のですから、IP(レイヤ3)のレベルではTCP/UDP(レイヤ4)の情報を識別できない=ACLの条件として利用できない(eq ssh
のような指定はできない)と言うだけのことです。
原則としては「できません」と言うことになりますが、標準/拡張ACLを「名前付きACL」として扱えばできるんですよね。
Router#show access-lists
Standard IP access list 1
10 permit any
Extended IP access list 100
10 permit ip any any
Router#conf t
Enter configuration commands, one per line. End with CNTL/Z.
Router(config)#ip access-list standard 1
Router(config-std-nacl)#5 deny any
Router(config-std-nacl)#ip access-list extended 100
Router(config-ext-nacl)#5 deny tcp any any
Router(config-ext-nacl)#end
Router#show access-lists
Standard IP access list 1
5 deny any
10 permit any
Extended IP access list 100
5 deny tcp any any
10 permit ip any any
Router#
解説の最後に
暗黙のdenyによって「192.168.1.0/24」からRouterAへのpingも拒否されるため設問の要件2が満たせません。
って書いてあるのですが、そのままでいい理由はこことは別ですか?
dot1qはtrunkではないのですか?よろしくおねがいいたします。
質問の意図するところがよくわからないのですが、設問の図の Operational Mode: static access
から、解説の通り switchport mode access
が実行されているのは間違いないのですが、そう言うことではないのですかね?
設問では
Cisco DNA Centerを使用したネットワークの特徴と言えるものはどれか(2つ選択)
とあるので、「どのような設定をするかは事前に検証が必要」なのが「DNA Centerの特徴」だといえるのか、が問題ID:8452の意図するところかと思います。
そして、疑問に思われている解説は「SD-Access」の「アンダーレイの構築」の話です。「DNA Center」の特徴を説明したものではありません。
さらに、
ブラウンフィールドで行う場合は、以下の点に注意が必要です。
と、「アンダーレイ構築時にブラウンフィールドで行う場合」と限定した話になっているので、「DNA Centerの特徴」からはどんどん離れていっていると思います。
もし問題ID:8452の設問が
既存のネットワークを強制的にCisco DNA Centerを用いたネットワークに移行させたい。事前に実施すべきことは何か。
と言うものであれば疑問を持たれてもおかしくないと思いますが、あくまで「特徴」を聞かれているのだと理解されると良いのではと思います。
^15$はそれぞれ行頭と行末が1と5という条件なので
12345の行とのみマッチすると考えていましたが違ったのでその理由が知りたいです。
^15$
だと「15」しかマッチしないんですね。
12345とマッチするには「行頭が1」「234とマッチする何か」「行末が5」じゃないとダメなんです。
設問は外部からmail.example.com宛にメールが届くようにとあるのに解答には、外部から「mail.example.com」という名前で接続に来た場合にとあり矛盾している気がします。
疑問点をもう少し噛み砕いていただけると嬉しいです。どう言う点がどう矛盾しているのかが読み取れませんでした。
通信としては
- 外部のSMTPサーバから
mail.example.com
に接続する - 接続後、SMTPによりメールを送信する
と言うシンプルなものですが、ここにDNSが絡んでくると追加の考慮が発生します。例えばGmailの場合だと example@gmail.com
に送ろうと思うと、まず gmail.com
のMXを探す必要が出てきます。(ここが設問のmail.example.com
の部分)
では実際gmail.comがどうなっているかと言うとこうです。(2022/8/29時点)
% dig +short @8.8.8.8 gmail.com mx
40 alt4.gmail-smtp-in.l.google.com.
10 alt1.gmail-smtp-in.l.google.com.
30 alt3.gmail-smtp-in.l.google.com.
20 alt2.gmail-smtp-in.l.google.com.
5 gmail-smtp-in.l.google.com.
gmail.comに繋ぎたいのに、宛先ホスト名が gmail-smtp-in.l.google.com
とかってなってます。じゃあそれは誰かって言うと
% dig +short @8.8.8.8 gmail-smtp-in.l.google.com a
142.251.8.26
142.251.8.26
だとわかります。これでようやくメールを送信するために接続する先のアドレスが142.251.8.26
であり、その際外部からは「@gmail.com」で接続しにいくことになります。
この流れの中で、解説文と照らして疑問に思われている(矛盾していると思われている)のはどのあたりでしょうか?
takizawatさんの理解がうまく読み取れないのですが…
複数の違うIPアドレスに設定させるのがIPマスカレードなはず
これは送信元、宛先のどちらについて言及されているものですか?
考え方としては
- SNATは「受け取ったパケットをNATして”指定されたアドレス”から送信されたように見せかける」ものです。
- IPマスカレードは「受け取ったパケットをNATして”自分のIPアドレス”から送信されたように見せかける」ものです。SNATの特殊パターンと言えますね。
- どちらも指定の仕方(
-s
で指定する対象)で1:1にも1:Nにもできます。
なのですが…
直接接続スタティックルートの場合、自分が隣接しているN/W(同じN/W内)に対してのみルーティングができるイメージなのですが、
これはどうして別ネットワーク(192.168.1.0/24)にルーティングができるのでしょうか?
Point-to-Point接続だから、ですね。
「このインターフェースから出せば受け取った相手がその宛先にルーティングしてくれる」と言う環境なのです。
スイッチから「人が座る机」までの間のケーブルを1本で済ませたいから、というのが一番わかりやすいかもしれません。
これまでPCだけが配備されていたオフィスに「既存のケーブルをそのまま流用してIP Phoneを追加できます!IP Phoneにはスイッチ向けとPC向けのポートがあるので、間に挟む形で設置すれば追加工事を抑えてIP Phoneを展開できます!」って言われたら、追加のケーブル不要で増やせるならいいかなって思って導入されやすくなる、という話かなーと。