なぜすべての開発者は、基本的なネットワークのトラブルシューティングを実行する方法を学ぶ必要があります
3095 ワード
フロントエンドまたはバックエンドで動作するかどうかに関係なく、すべての開発者はネットワークのトラブルシューティングでいくつかの能力を得るべきだと思います.あなたが低レベルシステムプログラミングに向かって重力を見つけるならば、これは特に本当です.
ネットワークとシステムを処理する能力は、偉大な開発者から良い開発者を切り離します.大きな開発者は、コード抽象化だけでなく、TCP/IPモデルを理解しています.
ソースhttps://www.guru99.com/tcp-ip-model.html
いくつかの基本的なネットワークのトラブルシューティングのスキル
ネットワーキングに入っているなら、ツールベルトに加えるべきいくつかの基本的なツールがあります. DNSクエリを実行します. ICMPエコーリクエストを送信し、エンドツーエンドのIP接続をテストします. 様々なネットワークホップを解析します. TCPソケット接続を確立するかどうかを確認します. テストアプリケーション層( パケットキャプチャを実行します.
どのIPアドレスが接続されているブラウザですか?
ウェブサーバはHTTPポートを聞きますか?
概要
ネットワークスタックの詳細については、すぐに問題点を特定し、分離するのに役立ちます. それは私のクライアント側のアプリケーションですか? 特定のポートをブロックするファイアウォールですか? ネットワークに過渡的な問題はありますか? サーバは稼働していますか.
ネットワークエンジニアリングとソフトウェア開発についてもっと話しましょう
あなたがフロントエンドからバックエンドの開発、またはバックエンド開発から低レベルシステムプログラミングに移行する方法を学ぶことに興味があるならば、さえずりの上で私を殴ってください
ネットワークとシステムを処理する能力は、偉大な開発者から良い開発者を切り離します.大きな開発者は、コード抽象化だけでなく、TCP/IPモデルを理解しています.
ソースhttps://www.guru99.com/tcp-ip-model.html
いくつかの基本的なネットワークのトラブルシューティングのスキル
ネットワーキングに入っているなら、ツールベルトに加えるべきいくつかの基本的なツールがあります.
dig
or nslookup
コマンド)ping
コマンド)traceroute X.X.X.X
) telnet X.X.X.X [port]
) curl https://somedomain
) tcpdump -i any
) そして、どんなビットがワイヤーに送られますかどのIPアドレスが接続されているブラウザですか?
% dig dev.to
; <<>> DiG 9.10.6 <<>> dev.to
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 39029
;; flags: qr rd ra; QUERY: 1, ANSWER: 4, AUTHORITY: 0, ADDITIONAL: 1
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 512
;; QUESTION SECTION:
;dev.to. IN A
;; ANSWER SECTION:
dev.to. 268 IN A 151.101.2.217
dev.to. 268 IN A 151.101.66.217
dev.to. 268 IN A 151.101.130.217
dev.to. 268 IN A 151.101.194.217
ウェブサーバはHTTPポートを聞きますか?
% telnet 151.101.2.217 443
Trying 151.101.2.217...
Connected to 151.101.2.217.
Escape character is '^]'.
上記の各ツールは、接続の問題を分離するのに役立ちます.たとえば、クライアントがHTTP 5 xxエラーを受信した場合、すぐに任意のTCPレベルの問題を除外できます.つまり、使用する必要はありませんtelnet
ファイアウォールの問題があるかどうかを確認するには、サーバーは、右側のソケット上で聞いているかどうか:サーバーは、アプリケーションレベルの応答を送信しました.概要
ネットワークスタックの詳細については、すぐに問題点を特定し、分離するのに役立ちます.
ネットワークエンジニアリングとソフトウェア開発についてもっと話しましょう
あなたがフロントエンドからバックエンドの開発、またはバックエンド開発から低レベルシステムプログラミングに移行する方法を学ぶことに興味があるならば、さえずりの上で私を殴ってください
Reference
この問題について(なぜすべての開発者は、基本的なネットワークのトラブルシューティングを実行する方法を学ぶ必要があります), 我々は、より多くの情報をここで見つけました https://dev.to/memattchung/why-all-developers-should-learn-how-to-perform-basic-network-troubleshooting-2ihjテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol