ホームページ >バックエンド開発 >Golang >golang を使用してネットワーク内のサブネットを一覧表示するにはどうすればよいですか?

golang を使用してネットワーク内のサブネットを一覧表示するにはどうすればよいですか?

王林
王林転載
2024-02-12 22:06:091400ブラウズ

如何使用 golang 列出网络中的子网?

php editor Banana では、Golang を使用してネットワーク内のサブネットを一覧表示する方法を紹介します。 Golang は、ネットワーク関連のタスクを簡単に処理するための多くの機能とライブラリを提供する強力なプログラミング言語です。ネットワーク内のサブネットを一覧表示するには、Golang の net パッケージと CIDR (Classless Inter-Domain Routing) ライブラリを使用できます。 IP アドレスとサブネット マスクを解析することで、ネットワーク内のすべてのサブネットを計算できます。次に、Golang を使用してこの機能を実装するコードを記述する方法を詳しく説明します。

質問内容

記載したいと思います。ネットワーク内のサブネット。Python で動作するサンプルコードがありますが、golang で必要です。

リーリー

192.168.0.0/22 192.168.4.0/22 192.168.8.0/22 192.168.12.0/22 192.168.16.0/22 192.168.20.0/22 192.168。 24.0/22 192.168 . 28.0/22 192.168.32.0/ 22 192.168.36.0/22 192.168.40.0/22 192.168.44.0/22 192.168.48.0/22 192。 168.52.0/22 192.168.56.0/22 192.168.60.0/22 192.168.64。 0/22 192.168.68.0/22 192.168.72.0/22 192.168.76.0/22 192.168.80.0/22 192.168.84.0/22 192.168.88.0/22 192.168.92 .0/22 192.16 8.96.0/22 192.168.100.0/22 192.168.10 4.0/22 192.168.108.0/22 192.168.112.0/22 192.168.116.0/22 192.1 68.120.0/ 22 192.168.124.0/22 192.168.128.0/22 192.168.132 .0/22 192.168.136.0/22 192.168.140.0/22 192 。 168.144.0/22 192.168.148.0/22 192.168.152.0/22 192.168.156.0/22 192.168.160.0/22 192.168.164.0/22 192.168.168.0 /22192.168 . 172.0/22 192.168.176.0/22 192.168.180.0/22 192。 168.184.0/22 192.168.188.0/22 192.168.192.0/22 192.168.196.0/22 192.168.200.0/22 192.168.204.0/22 192.168.208.0 /22192.168 .212.0/22 192.168.216.0/22 192.168.220.0/22 192.168.224.0/22 192.168.228.0/22 192.168.232.0/22 192.168.236.0/22 192.168。 240.0/22 192.168.244.0/22 192.168.248.0/22 192 .168.252.0/22

Solution

#私が書いた関数は、次のすべてのサブネットを生成します。 subnetmasksize を指定して、指定された netcidr 内に作成できます。ネットワークとサブネットはcidr表記で表されます。

###例えば:### リーリー リーリー

理解しやすいように算術演算を選択しました (パフォーマンスを向上させるには、ビット単位の演算を使用してください)。

この関数は、指定されたネットワークとサブネット マスクに関するいくつかの事実を計算し、すべてのサブネット CID を生成します。

リーリー

以上がgolang を使用してネットワーク内のサブネットを一覧表示するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はstackoverflow.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。