私はip adrressesのリストを持っています。私はそれらのどれかが予備のアドレスであるかどうかを知りたい(ref:http://en.wikipedia.org/wiki/Reserved_IP_addresses)。私の作品ではawkを使用していますので、あらかじめ作成されたシェルスクリプトなどがあれば、そのようなアドレスを識別するのに役立ちますか?IP予約アドレスのチェックの機能
1
A
答えて
0
UNIX grep
について知っていますか?
ファイルに保存されているターゲット文字列のリストをgrepで他のファイルに含めることができます。
予約リストにある任意の単語に一致するyourList *の行がすべて出力されます。あなたはgrep -F reservedList ....
を使用する必要がありますが、シェルスクリプト内でこれをやっている場合は、あなたがあなたの行動を条件付きにすることができます
if fgrep -f reservedList.txt yourList > /dev/null 2>&1 ; then
echo "found items in reserved List"
else
echo "no items found in reserved List"
fi
。上記の最初の例を使用して動作していることを確認し、そうでない場合は、man grep
に問い合わせて、OS/grepバージョンで使用する正確な引数を確認してください。
awkでこれを本当に行う必要がある場合は、基本的にawkでこの機能を作り直すことになります。
こちらがお役に立てば幸いです。
0
あなたは、古き良きのIPv4のリストを養う場合
while IFS=. read A B C D
do ADDR=`printf %03d.%03d.%03d.%03d $A $B $C $D`
[[ 000.255.255.255 < $ADDR && $ADDR < 010.000.000.000 ]] && continue
[[ 010.255.255.255 < $ADDR && $ADDR < 100.064.000.000 ]] && continue
[[ 100.127.255.255 < $ADDR && $ADDR < 127.000.000.000 ]] && continue
[[ 127.255.255.255 < $ADDR && $ADDR < 169.254.000.000 ]] && continue
[[ 169.254.255.255 < $ADDR && $ADDR < 172.016.000.000 ]] && continue
[[ 172.031.255.255 < $ADDR && $ADDR < 192.000.000.000 ]] && continue
[[ 192.000.000.007 < $ADDR && $ADDR < 192.000.002.000 ]] && continue
[[ 192.000.002.255 < $ADDR && $ADDR < 192.088.099.000 ]] && continue
[[ 192.088.099.255 < $ADDR && $ADDR < 192.168.000.000 ]] && continue
[[ 192.168.255.255 < $ADDR && $ADDR < 198.018.000.000 ]] && continue
[[ 198.019.255.255 < $ADDR && $ADDR < 198.051.100.000 ]] && continue
[[ 198.051.100.255 < $ADDR && $ADDR < 203.000.113.000 ]] && continue
[[ 203.000.113.255 < $ADDR && $ADDR < 224.000.000.000 ]] && continue
echo $A.$B.$C.$D is reserved
done
スクリプトへの入力として行ごとに対処し、それが出力する任意の予約済みアドレス。
関連する問題
- 1. デザイン室予約可否のチェック機能
- 2. Azure予約済みIPアドレス(静的VIP)をパブリックIPアドレスに変換する
- 3. 任意のIPアドレスのnetsh http url予約の構文
- 4. Windows、DHCPサーバーの予約 - 無料のIPアドレスを見つける
- 5. 予約されたサブネット範囲のプライベートIPアドレス
- 6. Firefox拡張機能のIPアドレス検索
- 7. アズールがサブネットの最初の4つのIPアドレスを予約する理由
- 8. 予約済みのIPアドレス(クラシック)をSQLデータベースAzureに割り当てます。
- 9. ExecJS :: ProgramError:でSyntaxError:予約語 "機能"
- 10. R内から自分のIPアドレスを取得する機能?
- 11. iOS9のWKWebviewがWebSocketと機能しないraw IPアドレス
- 12. Kubernetes - サービスクラスターのIPアドレスとPodのIPアドレス
- 13. WordpressのWooCommerceの予約とVisual Composerの機能性の問題
- 14. IPv6 IPアドレスを持つRewriteRuleが機能しない
- 15. IPアドレスマッチングフィルタ機能
- 16. IPアドレスへの物理アドレス
- 17. Wordpress Contact-form 7 - Jqueryで予約フォームの機能
- 18. ストア機能アドレス
- 19. MaskedTextBoxのIPアドレス?
- 20. ログクライアントのIPアドレス
- 21. そのIPアドレス
- 22. SilverlightのIPアドレス
- 23. 予約(ホテルのための)予約予約緑、古い予約赤のデータグリッド
- 24. 機能の2つのアドレス
- 25. MACアドレスとIPアドレス
- 26. Python - IPアドレスのチェック(それ以降はありません)
- 27. VB.NETでIPアドレスの変更をチェックする方法は?
- 28. Firebaseのクラウド機能でクライアントのIPアドレスを取得する方法は?
- 29. IPアドレス
- 30. IPアドレス
また、GlennJackmanがhttp://stackoverflow.com/questions/7741700/evaluating-command-with-awkであなたに与えた答えに間違いがありますか?あなたは同じ質問を続けています。 Arg!がんばろう。 – shellter
私はすべての予約済みアドレスのリストを持っていれば、あなたの解決策は良いかもしれません。しかし、私はそれを持っていません。予約されたアドレスは非常に多く、そのフォーマットは私が投稿したwikipediaページに表示されます。また、それらの中には8の倍数ではないCIDRプレフィックスがあるので、それらの正規表現を作成するのは簡単ではない – markusian
私は非常に早い時期に書かれていたので、とにかく、あなたのメッセージの一番最初の文は、今までreg exprsまで言及されていない「私はip adrressesのリストを持っています。あなたが達成しようとしていること、あなたがそれをやりたい/やる必要があること、そしてあなたがそれをやりなおす必要があると思う理由についての明確な記述を書く時間を費やすことができます。(次を参照) – shellter