Masa's ITC Life

夢は起業家!全てにおいて凡人だけど頑張ることだけはいっちょ前!

「プログラミング」 一覧

【DHCP】Cでdiscoverを送信してみた

2019/08/07   -プログラミング

今回はDHCPのdiscoverパケットを送信してみました。 実行環境にはVirtual Boxで構築したネットワークを使用しています ※DHCPパケット送信できるかという勉強目的なので、実際はDHC ...

UDPをBroadcastしようとしたら、permission deniedになった件

2019/08/07   -プログラミング

DHCPパケットを送信するコードを書いていたら、どうも送信の部分が上手くいきませんでした。 通常通りUDPソケットを作って、作成したソケット、データ、sockaddr_inなどをsendtoで指定しま ...

Cでarpreq構造体&SIOCSARPを使ってARPテーブルにエントリーを追加してみた!

2019/07/24   -プログラミング

今回はCでARPテーブルにエントリーを追加してみます。 鍵となるのは、ARPエントリーの情報をまとめたarpreq構造体と、そのエントリーをARPテーブルに登録するためのSIOCSARPです。ちなみに ...

CのRawSocketでARPスプーフィングしてみた!

2019/07/24   -プログラミング

今回はARPスプーフィングをC言語で実際に体感してみたいと思います。 VirtualBoxを用いて、ホストOS一台とゲストOS二台で行いました。 対象AはホストOSなので、MACアドレスは伏せました。 ...

C言語でARPテーブルを表示させてみた!

2019/07/18   -プログラミング

今回はCで保持している全ての ARPエントリーを取得して表示させてみました。 CでARPテーブルを表示させようと思った当初、 arpコマンドで出てくる情報を そのままCで実装したいと思いまいした。 そ ...

【C++】Raw SocketでICMPパケットを扱ってみた!

2019/06/08   -プログラミング

今回はICMPパケットに絞ってみていこうと思います。 ICMPはタイプとコードの値を持っています。タイプによっては複数のコードを持つものもあります。なので、タイプやコードの値を表示するだけなら、icm ...

Raw SocketでARPパケットをキャプチャする

2019/06/06   -プログラミング

ARPパケットにターゲットを絞って、パケットキャプチャしていこうと思います。 ARPパケットを扱うには、linuxで定義されているether_arp構造体とarphdr構造体を使用します。そのためには ...

【パケットキャプチャ】Raw Socket でpingを受信し中身を表示してみた

2019/06/05   -プログラミング

パケットキャプチャを作る際のテスト用として、pingの受信結果を簡単に表示するものです。 まずはインクルードするもの

次に各プロトコル ...

recvで受信しEthernetヘッダを表示してみた

2019/06/02   -プログラミング

データリンク層を扱えるソケットを使って、受信したデータのEthernetヘッダを表示してみました。自分でEhternetフレームを定義する必要はなく、すでにライブラリに準備されています。 Linuxの ...

VirtualBoxでソケットプログラミングを行うための環境構築

2019/05/31   -プログラミング

ネットワークの勉強のために、ソケットを扱ったプログラミングをしています。実際にプログラムを動かすときに、本当はPC2台使ってやりたかったのですが、色々な意味でPC2台を準備できませんでした。そこで、自 ...

ioctlでインターフェースの状態を取得し表示させてみた(ソケットプログラミング)

2019/05/27   -プログラミング

ifconfigコマンドでインターフェースの状態などが確認できます。そこで今回、プログラムを通してインターフェースの状態を取得してみます。 ifconfigでは、flagの値と何がONになっているのか ...

【C】ioctlでMACアドレスを取得し表示させてみた!(ソケットプログラミング)

2019/05/26   -プログラミング

普通にifconfigで調べられますが、 ソケットプログラミングの勉強として、 指定したインターフェースの MACアドレスを取得してみました。 インタフェースを操作するには、 基本的にはifreq構造 ...

Copyright© Masa's ITC Life , 2021 All Rights Reserved Powered by STINGER.