ASP.NET 練習帳

国内の ASP.NET サーバーに関して

ルーター間 (vyos 二台) で ipsec vpn している際、末端の linux ホストが mtu をキャッシュしていることに気が付いた。

[user2@east2 ~]$ ip route get 192.168.15.105
192.168.15.105 via 192.168.16.104 dev enp0s3  src 192.168.16.106
    cache  expires 298sec mtu 1438●キャッシュの寿命残は 298 秒で mtu は (1500 でなく) 1438

で、このキャッシュを消すには echo 0 > /proc/sys/net/ipv4/route/flush もしくは ip route flush cache とする。

キャプチャしてわかったのだが、vyos が ICMP (type=3, code=4) で MTU of next hop = 1438 を linux ホストに伝えていたのだ。

このキャッシュした 1438 を有効活用している例を探したが見つからない。唯一 ping は有効?に活用していた。

[root@east2 ~]# ping -c 1 -s 1411 -M do 192.168.15.105●MTU 1438 に収まらない ping を実行一回目
PING 192.168.15.105 (192.168.15.105) 1411(1439) bytes of data.
From 192.168.16.104 icmp_seq=1 Frag needed and DF set (mtu = 1438)

--- 192.168.15.105 ping statistics ---
1 packets transmitted, 0 received, +1 errors, 100% packet loss, time 0ms
[root@east2 ~]# ping -c 1 -s 1411 -M do 192.168.15.105●再度、MTU 1438 に収まらない ping を実行
PING 192.168.15.105 (192.168.15.105) 1411(1439) bytes of data.
ping: local error: Message too long, mtu=1438●奇妙なメッセージ。この時、ping 送信は行われず、送信が無いので応答も無い。

--- 192.168.15.105 ping statistics ---
1 packets transmitted, 0 received, +1 errors, 100% packet loss, time 0ms

有効活用しているケースを知りたい。

PRIVATE から PUBLIC へ向けての通信など、いくつかが全許可になっているけど、練習なのでまあいいってことで。

参考にした資料は http://brocade.com/5400documentation の Firewall

vyos_zone_based_firewall
# SNAT
set nat source rule 300 outbound-interface eth0
set nat source rule 300 source address 192.168.103.0/24
set nat source rule 300 translation address 192.168.101.252

# SNAT
set nat source rule 400 outbound-interface eth0
set nat source rule 400 source address 192.168.102.0/24
set nat source rule 400 translation address 192.168.101.252

# DNAT
set nat destination rule 100 destination address 192.168.101.252
set nat destination rule 100 destination port smtp,http
set nat destination rule 100 translation address 192.168.103.250
set nat destination rule 100 protocol tcp
set nat destination rule 100 inbound-interface eth0

# ゾーン (DMZ, PRIVATE, PUBLIC) を作る
set zone-policy zone DMZ interface eth2
set zone-policy zone PRIVATE interface eth1
set zone-policy zone PUBLIC interface eth0

# DMZ から PRIVATE へ
# established と related を認める
set firewall name DMZ_TO_PRIVATE rule 10 action accept
set firewall name DMZ_TO_PRIVATE rule 10 state established enable
set firewall name DMZ_TO_PRIVATE rule 10 state related enable
set firewall name DMZ_TO_PRIVATE rule 10 protocol all
set zone-policy zone PRIVATE from DMZ firewall name DMZ_TO_PRIVATE

# PUBLIC から PRIVATE へ
# established と related を認める
set firewall name PUBLIC_TO_PRIVATE rule 10 action accept
set firewall name PUBLIC_TO_PRIVATE rule 10 state established enable
set firewall name PUBLIC_TO_PRIVATE rule 10 state related enable
set firewall name PUBLIC_TO_PRIVATE rule 10 protocol all
set zone-policy zone PRIVATE from PUBLIC firewall name PUBLIC_TO_PRIVATE

# PRIVATE から DMZ へ
# 全てを認める
set firewall name PRIVATE_TO_DMZ rule 10 action accept
set zone-policy zone DMZ from PRIVATE firewall name PRIVATE_TO_DMZ

# PUBLIC から DMZ へ
# established と related を認める
# smtp と http を認める
set firewall name PUBLIC_TO_DMZ rule 10 action accept
set firewall name PUBLIC_TO_DMZ rule 10 state established enable
set firewall name PUBLIC_TO_DMZ rule 10 state related enable
set firewall name PUBLIC_TO_DMZ rule 10 protocol all
set firewall name PUBLIC_TO_DMZ rule 20 action accept
set firewall name PUBLIC_TO_DMZ rule 20 destination port smtp,http
set firewall name PUBLIC_TO_DMZ rule 20 protocol tcp
set zone-policy zone DMZ from PUBLIC firewall name PUBLIC_TO_DMZ

# DMZ から PUBLIC へ
# 全てを認める
set firewall name DMZ_TO_PUBLIC rule 10 action accept
set zone-policy zone PUBLIC from DMZ firewall name DMZ_TO_PUBLIC

# PRIVATE から PUBLIC へ
# 全てを認める
set firewall name PRIVATE_TO_PUBLIC rule 10 action accept
set zone-policy zone PUBLIC from PRIVATE firewall name PRIVATE_TO_PUBLIC

tldr

iptables で --state なフィルタを書く際は RELATED を忘れずに許可すべし。

case 1

手元 PC (host1) にて telnet で smtp する。
[root@host1 ~]# telnet 192.168.11.201 25
Trying 192.168.11.201...
telnet: connect to address 192.168.11.201: Connection refused
即座に応答が帰ってくる。 この時、接続先ホスト 192.168.11.201 では 25 番を listen しておらず、加えて firewalld は停止状態である。 手元 PC と接続先ホストの間にはファイアウォールがあり、ESTABLISHED と RELATED を ACCEPT する設定にしてある。
iptables -P FORWARD DROP
iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT
ファイアウォールで採取したキャプチャには [R.] が含まれている。
12:40:32.809470 IP 192.168.11.202.44840 > 192.168.11.201.smtp: Flags [S], seq 1346627739, win 29200, options [mss 1460,sackOK,TS val 6168822 ecr 0,nop,wscale 7], length 0
12:40:32.809867 IP 192.168.11.201.smtp > 192.168.11.202.44840: Flags [R.], seq 0, ack 1346627740, win 0, length 0

case 2

case 1 の続き。 接続先ホストにて firewalld を稼働させる。
[root@host2 ~]# systemctl start firewalld.service
手元 PC (host1) にて telnet で smtp する。
[root@host1 ~]# telnet 192.168.11.201 25
Trying 192.168.11.201...
telnet: connect to address 192.168.11.201: No route to host
即座に応答が帰ってくる。 ファイアウォールで採取したキャプチャには admin prohibited (type=3, code=10) が含まれている。
12:56:13.898687 IP 192.168.11.202.44844 > 192.168.11.201.smtp: Flags [S], seq 1872229748, win 29200, options [mss 1460,sackOK,TS val 7109911 ecr 0,nop,wscale 7], length 0
12:56:13.899173 IP 192.168.11.201 > 192.168.11.202: ICMP host 192.168.11.201 unreachable - admin prohibited, length 68

case 3

case 2 の続き。 ファイアウォールの設定を以下のようにする。 (ESTABLISHED,RELATED を ESTABLISHED に変更)
iptables -P FORWARD DROP
iptables -A FORWARD -m state --state ESTABLISHED -j ACCEPT
手元 PC (host1) にて telnet で smtp すると、長時間 (だいたい二分) 待たされた後でタイムアウトと表示される。 RELATED が許可されていない場合、admin prohibited が送信元に届かないのだ!
[root@host1 ~]# telnet 192.168.11.201 25
Trying 192.168.11.201...
telnet: connect to address 192.168.11.201: Connection timed out

症状

eth0, eth1 だったのに eth2, eth3 になってしまったので直したい。

解決方法

eth2, eth3 の設定を delete してから reboot する。
# delete interfaces ethernet eth2
# delete interfaces ethernet eth3
# commit
# save
# exit
$ reboot
起動後は eth0, eth1 の名前が割り当てられた。

vyos@lemon2:~$ monitor interfaces ethernet eth0 traffic save aiueo.pcap
Capturing on eth0
74 ^C
vyos@lemon2:~$ ls
aiueo.pcap


読む人に響かない内容だけど紹介する。

【ご案内】「このまま批准していいの?続・そうだったのか!TPP―24のギモン」発行 | TPP交渉差止・違憲訴訟の会

代わりに私が TPP 最悪の問題点を説明する。

  • 自分に関することを自分で決定できず、他人の許可が必要。
  • 自分より他人の意志が優先。
  • 他人の制御下に置かれて、自分より他人が優位。

それが TPP 導入後の世界。そんなのは少し考えればおかしいとわかる。


やっぱり「市長賞を」青森・黒石市長が謝罪 自殺少女の写真受賞取り消し問題

【炎上】女子中学生写真が黒石市長賞→いじめ自殺→賞取消→批判の声「市長は恥を知れ!」「市長無能」 : あじゃじゃしたー

痛いニュース(ノ∀`) : 自殺した中2女子が被写体の写真、一転してコンテスト最高賞に 批判高まり方針転換…黒石市 - ライブドアブログ

2016年の他の作品は下記から参照できる。。。。中学生が被写体となっている写真が断然よい。赤色が映える。

黒石よされ写真コンテスト | 一般社団法人 黒石観光協会


沖縄土人発言

【衝撃動画】沖縄サヨクの暴力『ノーカット版』が公開 防衛局職員を押さえつけ恫喝し尋問、帽子や無線を強奪「テントに連れこむぞ?」「顔撮ったれ!」 / 正義の見方

今回は日本語で受験しました。60 日と数日、こればっかりだったので、解放されて嬉しい。

SWITCH の公式ガイドはハズレだと言っておこう。特に Practice Test はゴミと言っていいほどの低クオリティである。ICND2 の公式ガイド (+ Practice Test) は良い出来だったので SWITCH にも期待して購入したけどダメダメ。

CCNP Routing and Switching SWITCH 300-115 Official Cert Guide Premium Edition eBook and Practice Test



200-101 ICND2 合格

知らぬ間に誰もが Packet Tracer を入手できるようになっている。

Packet Tracer and Alternative Lab Solutions - 29644 - The Cisco Learning Network

PTDT-LC - Networking Academy

Packet Tracer 101 というコースを受講すると Packet Tracer がダウンロードできるようになる。

俺が CCNA を学習した際は入手できなかったのに・・・なんてこった

↑このページのトップヘ