TCP/IP通信を使用した装置との通信方法について

このQ&Aのポイント
  • TCP/IP通信を使用した装置との通信方法について教えてください
  • 装置へのコマンドを発行するためにEthernetのポート番号を指定して通信する方法を知りたいです
  • Visual Basicのtcpclientクラスを使用して通信を確立しようとしていますがうまくいきません。初心者のため具体的な方法を教えていただけると助かります
回答を見る
  • ベストアンサー

TCP/IP通信を使用した、装置との通信方法について教えてください

TCP/IP通信を使用した、装置との通信方法について教えてください 装置へのコマンドを発行するために、Ethernetのポート番号を指定して、コマンドの発行と、データの受け取りを行いたいのですが、どのような方法があるのでしょうか。 使用する言語はVisuau Studio 2008のVisual Basicです。 OSはXPです。装置の仕様は、ポート番号を指定して、コマンドを発行をしてくださいという内容になっています。 tcpclientクラスを使用して、Connectメソッドで接続を確立しようとしたのですが、うまく確立ができません。通信については初心者でどのうようにすればいいのか分かりません。 ご教授いただければ幸いです。 よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.1

どこが、どのようにいかないのか、またどのようなコードでどのようなエラ ーがでているのか詳しく載せてもらわないとどうアプローチすればいいいの かわかりません。 一応そのへんのことは、以下のサイトに載っているので参考にして下さい。 http://dobon.net/vb/dotnet/internet/tcpclientserver.html

関連するQ&A

  • TCP及びUDP通信について

    TCP及びUDP通信について 現在WinSockAPIを用いた通信を行うプログラムを組んでいます。 しかしながらネットワークに関しては初心者で、わからない点がいくつか出てきたので質問させて頂きます。 -------------------------------------------------- 1.TCPで双方向通信を行う場合、サーバ側は指定したポートにbind→listenし、接続を待ち受けます。 クライアント側はサーバのIPを指定し、接続確立後にポートはOSが自動で割り振ると聞きました。 つまり、クライアント側がポートを開放せずに通信が出来るのは、OSなどが自動でポートを割り当て、割り当てたポートに到着したデータを該当アプリケーションに渡すからでしょうか? ポート関連は全てルータが管理しているものだと思っていたのですが、OSがポートを割り当てるという動作がよく理解できません。 -------------------------------------------------- 2.UDPで双方向通信を行う場合、端末A・端末Bともに指定したポートにbindする必要があると聞きました。 つまり、UDPで双方向通信を行う場合、端末A・端末Bの双方でポートを開放する必要があるということでしょうか? -------------------------------------------------- 是非ともご教授ください。

  • TCP/IP通信に関する質問です。

    下記の3つのLinuxPCを使って、TCP/IPによるソケット通信のシステムを作成しました。 PC1: IP:192.168.0.1 Port: 20000 TCPサーバ PC2: IP:192.168.0.2 Port: 20000 TCPサーバ PC3: IP:192.168.0.3 Port:ランダム(クライアントなので) TCPクライアント PC3をクライアントとして、同じポート番号を持つアプリが動いている PC1とPC2に繋いで通信をする形です。 このシステムは問題なく動きました。 しかし、続いてPC1とPC2を一つのPCに(ハードウェアとして)まとめたくなったときに、 下記の条件があったとき、どのようにすれば良いでしょうか? 1. PC3のソフトウェアは一行も変更しない 2.りPC1とPC2が同一のハードウェアになっても、それぞれのソケットに流れるデータは変わらない 一台のコンピュータにおいて、一つのNICに複数のIPをふることはできましたが、 同じポート番号のソケットを作成するのはできないと思っています。 今のところ、一台のコンピュータで仮想マシンを二台立ち上げる方法を考えていますが、 それ以外に上手い方法はあるでしょうか? 非常に困っているため、ご回答よろしくお願いします。

  • ネットワークカード2枚挿し TCP/IP通信

    PCにネットワークカードを2枚挿しています。 一方はある機器に一方はネットと繋がっています。 機器とPCでTCP/IP通信をするアプリケーションを作成しています。設定画面を作って相手機器のIP、ポート番号等を設定するようにしています。 TCP/IPの場合はPCのIP等を設定画面に入れなくても どちらのネットワークカードを経由するかというのは 決めてくれるんでしょうか? PCのIPアドレスは指定する必要ないですか? UDP/IPの場合はどうなんでしょうか? PCと機器の両方のIP、ポート番号を指定しなければいけないのでしょうか?

  • TCP/IPだけが通らないのですが、、、

    IBM ThinkPad 240Z を使用しています。 元々PCの付属のイーサネットポートで社内LANに接続していたのですが、 あるときからインターネットに接続することができなくなりました。 但し、Microsoftネットワーク、Netwareネットワークは共に接続ができます。 Pingコマンドでサーバーに打つと返ってこず、自分のIPに打つと返ってきます。 勿論、IPアドレス、サブネット、ゲートウェイ、DNS等の設定は問題ありません。 恐らく、TCP/IPが正常に動作していないようなのですが、コンパネのネットワーク から、TCP/IPを一旦削除し再度インストールしてもダメです。 どうしてなのでしょうか?何を調べたらいいのでしょうか? どなたか至急に教えて下さい。大変困ってます。 

  • TCP/IPにおける端末間の通信について(NAPT)

    TCP/IPにおける端末間の通信について(NAPT) お世話になります。 TCP/IPについて質問です。 NAPT機能の付いたルータを介し、インターネット越しに通信を行う場合を想定します。 1.端末A(送信側)から端末B(受信側)にTCPあるいはUDPを用いてデータを送信する場合、端末Bでは必ず待ち受けるポートにbind(listen)し、また端末Aでは指定されたポート宛てにデータを送信する必要があると聞きました。 ここまでは理解できますが、ここにNAPT機能の付いたルータが介入する場合、"例外なく"端末B側のルータでポートマッピングを行う必要があるのでしょうか? 2.上記の認識がもし正しい場合、2台の端末で通信を行う場合は少なくとも片方でポートマッピングが必要ということになります。 だとするならば、SkypeやMSNメッセンジャーなどのクライアント側でポートマッピングが必要のないアプリケーションは、必ずサーバを介した通信を行っているということでしょうか? Skypeなどの仕組みを説明しているサイトを見ると、接続の手順を踏んだのちに端末間で通信を行うとの記述があるのですが、いくら接続先のIPがわかっていても、アプリケーション間で接続を確立するには、片方でポートマッピングが必要になると思うのですが、これはどういうことなのでしょうか? 3.上記の認識が正しい場合、UDPで受信する為には必ずポートマッピングが必要ということになります。 だとするならば、クライアント側でポートマッピングが必要のないアプリケーションは、少なくとも受信にはUDPを用いていないということでしょうか? 以上の3点についてお答え頂けると幸いです。 回答お待ちしています。

  • C#とTCP/IPを利用したサーバープログラム(複数クライアント対応)

    VC#とTCP/IPを利用したサーバープログラムを制作しています。 サーバーとクライアントの1対1での通信には成功したのですが、1つのサーバーで複数のクライアントと通信する方法がわかりません。 同じポート番号を利用できるのでしょうか。ただ単にTcpClientの配列を作ればいいのでしょうか。やはりクライアントの数だけスレッドを作らないといけないのでしょうか。 環境はWindowsVistaでMicrosoft Visual C# 2008 Express Editionを使用しています。 詳しい方がいましたらぜひ具体的なC#でのコード等を教えてください。 よろしくお願いいたします。

  • ソケットを使ったTCP通信

    はじめまして. 最近ネットワークの勉強を始めた学生です. ソケットを使ったTCP通信について質問させてください. クライアント側はsocket(), connect()でコネクションを確立した後に何回か連続してsend(), recv()を行いたいのに,サーバ側がファイアウォールや侵入検知システムを使って途中で通信を終了するようにしてしまっている場合,クライアント側は再びコネクションを確立させなければ全てのsend()を行うことはできないのでしょうか? よろしくお願いします.

  • TCP/IP通信OCXのアウトラインを教えてください)

    Cの知識はありますが、 Windows開発は今回がはじめてです。 VC++6.0でTPC/IP通信を行うOCXを作成し、 クライアント(VB6.0で作成)から呼び出そうとしています。 TCP/IP通信のc/sサンプルプログラムはいくつかみましたが、 その機能をOCXの形にしたいときどう考えたらよいか アウトラインを教えていただけないでしょうか? わたしなりには以下のように考えました。 通信用のクラスを作成し、 メンバ変数(private)として ・サーバIP ・ポート番号 ・ソケットハンドル などを用意。 メッソッドとして ・接続(ソケット初期化~接続まで) ・送受信(ループ処理?) ・切断(シャットダウン~クリーンアップまで) イベントとして ・??? イベントとメソッドに何を用意すべきか (呼ぶべき関数と手順はわかるのですが、 メソッドとすべき単位がわかりません)と OCXから非同期モード設定関数(WSAAsyncSelect()) をよぶときの第2パラメタ(HWND)に 何をセットすべきかがわかりません。

  • TCP/IPを使用したサーバークライアントに関して

    TCP/IPを使用したサーバー、クライアントの考え方に関して、教えてほしいのですが? 今、TCP/IPを使用して、PCから装置のLEDをON/OFFしたり、 装置からはADのデータをPCに送る場合。 PCをクライアント、装置をサーバとした時、装置のIPアドレスとPC側のポート番号を 決めて、予め装置のファームウェアに焼き付けておけば、PCのアプリ側では、 装置側のIPが分かっているので、装置からの接続要求を受付けできますが、 逆にPCをサーバ、装置をクライアントとした時、装置側では、PCのIPアドレス(DHCPに より自動的に割り当てられる場合)が分からなければ、 1.装置側では、PCへの接続が出来ないと思うのですが、如何でしょう、 他に手だてがありますか? 2. この様な場合、PCをクライアント、装置をサーバとして、組むのが一般的なのでしょうか? 条件としては、装置側にPCのIPアドレスは入力できないものとし、また、PCのIPアドレスはDHCPで自動的に割り当てられるものとする。 詳しい方、ご教授お願いします。

  • TCP/IP ACKについて

    初めて質問させて頂きます。 現在WinpCapを使ってTCPの通信プログラムを作成しています。 単純にパケットの受信や送信は出来たので、ローカルサーバーに接続出来るか試しているのですが、通信が確立しません。 状況としては、こちらからSYN = 1でサーバーに信号を送ると、サーバーから返事が来ます。 サーバーの返事を待ってACK = 1でサーバーに返事をするのですが、そのときの状態をWiresharkで確認すると、ACKの番号が2067011292等と表示されて通信が確立しません。 ACKの値が異常なのは判りますが、この数値はどこから来るのか、又対処方法などが有りましたら教えてください。 環境はVC2003、WInXP/Win7です。

専門家に質問してみよう