socat

socatはパケット境界をどこに/どのように挿入しますか?
socat

socatはパケット境界をどこに/どのように挿入しますか?

socat着信シリアルトラフィックをローカルUDPポート(macOS)に転送するために使用します。 socat OPEN:/dev/cu.usbmodem13203 UDP:localhost:12345 シリアルデバイスはストリームインタフェースで、UDPはパケットベースなので、明示的な内容はありません。正しいパケット境界を導入する場所と方法に答えてください。私のテストでは、各バイトは独自のUDPパケットに転送されます。たとえば、「XYZ」という文字列を送信すると、テストサーバーは次のように出力します。 Datagram: X Datagram: Y D...

Admin

socatを使用して独自のptyペアを作成すると、ジョブ制御は機能しません。
socat

socatを使用して独自のptyペアを作成すると、ジョブ制御は機能しません。

私はパズルのさまざまな部分を見ながら、ターミナルエミュレータを理解しようとしています。 socatを使用してptyペアとシェルプロセスを開始し、picocomを使用して接続しようとしています。 これはsocatコマンドの私の理解です。 $ socat -d -d PTY,raw,echo=0 EXEC:"/bin/sh",pty,stderr,setsid,sane 2024/03/12 08:12:16 socat[9106] N PTY is /dev/pts/5 2024/03/12 08:12:16 socat[9106] N forking off...

Admin

ttyS0をエミュレートするか、Ubuntu 22のttyUSB0に接続してください。
socat

ttyS0をエミュレートするか、Ubuntu 22のttyUSB0に接続してください。

ttyS0が存在することを確認するJAVAコードがあります。シリアルポートがないので、次のようになります。 Exception in thread "main" java.lang.RuntimeException: Error opening "/dev/ttyS0" tcgetattr(): Input/output error at com.sun.comm.LinuxDriver.getCommPort(LinuxDriver.java:66) at javax.comm.CommPortIdentifier.open(Co...

Admin

socat引数の順序が重要なようです
socat

socat引数の順序が重要なようです

マニュアルページには次の内容がsocat記載されています。socatは、2つの双方向バイトストリームを設定し、それらの間でデータを転送するコマンドラインベースのユーティリティです。これに基づいて、主張の順序は重要ではありません。私はしばしば他のソースから同じ内容を読みます。 しかし、時には順序が重要だと感じる時もあります。例:顧客のネットワークにSSH経由でアクセスできる組み込みシステムがあります。埋め込みは、MS SQLデータベースへの直接アクセスを提供します。データベースの内容をデバッグするには、ホストコンピュータ(IP 192.168.100.1)のV...

Admin

トンネリングXdmcp+sshが機能しないのはなぜですか?
socat

トンネリングXdmcp+sshが機能しないのはなぜですか?

SSH経由でXdmcpプロトコルのトンネルを設定したいと思います。リモートログインのためのアクセスセキュリティ。簡単な解決策はopenvpnかもしれませんが、まずsocat + sshを試してみたいです。サーバーはSolaris 10で、クライアントはSlackware 15です。 クライアントから ssh -L 6667:localhost:6667 192.168.201.200 サーバー上 socat tcp4-listen:6667,reuseaddr,fork UDP:192.168.201.200:177 クライアントから sudo soca...

Admin

ソケットを「スニッフィング」することは可能ですか?ソキャットは機能しません。
socat

ソケットを「スニッフィング」することは可能ですか?ソキャットは機能しません。

状況は次のとおりです。 kvm-qemuを介して仮想シリアル(ソケット)を介して接続された2つの仮想マシン(VM)があります。次のシリアル構成を使用して2つの仮想マシンを作成しました。 Serial1(スラックウェア、port1、ttyS1、またはcom2を使用) <serial type="unix"> <source mode="bind" path="/tmp/ppp.sock"/> <target type="isa-serial" port="1"> <model name="isa-ser...

Admin

socatでシリアルデバイスの分離をシミュレートする方法
socat

socatでシリアルデバイスの分離をシミュレートする方法

このテストプログラムがあります。 import sys for line in sys.stdin: print(line.strip()) print("DONE") 実際のデバイス(FTDI)でラインを印刷する場合 python3 demo.py < /dev/ttyUSB0 その後、送信したすべての行を印刷してUSBケーブルを抜くと、DONEメッセージが表示されます。 一方、socatを使って偽のttyを生成すると、 socat -d -d pty,raw,echo=0,link=ttyFake pty,raw,echo=0,li...

Admin

socatベースのVPNを使用してDNSを設定するには?
socat

socatベースのVPNを使用してDNSを設定するには?

socatにはトンネルインターフェイスを作成し、UDPを介してトラフィックをルーティングする機能があるので、この機能を使用してVPNを作成することが可能だと思います。 サーバー側設定: sudo socat -d -d TUN:10.0.0.1/24,up UDP-LISTEN:<PORT>,reuseaddr,fork sudo iptables -A FORWARD -i tun0 -j ACCEPT sudo iptables -t nat -A POSTROUTING -s 10.0.0.0/24 -o eth0 -j MASQUER...

Admin

ptyなしでシリアルターミナル(RS-232)を設定できますか?
socat

ptyなしでシリアルターミナル(RS-232)を設定できますか?

/dev/ttyS0RS-232ポートがあり、ヌルモデムを介して互いに接続されている2台のコンピュータがあります。 私は過去に外部端末がどのように機能していたのか、そしてこれが今日のLinuxの動作方法とどのように関連しているのかを少しずつ理解しようとしています。 私は次のように動作するようにしました: メインコンピュータ: $ sudo socat /dev/ttyS0,raw,echo=0 exec:"/bin/bash -i",pty,stderr,setsid,sigint,sane 端末: picocom -b 9600 /dev/ttyS0 ...

Admin

socat et al:着信接続を受信したらコマンドを実行します。
socat

socat et al:着信接続を受信したらコマンドを実行します。

誰かがsocatを使用して、次のようにtcpポートから着信接続をリッスンしているとします。 $ socat file:`tty`,echo=1 "TCP-L:8080" 接続を受信したら、コマンドを一度だけ実行できますか?notify-send通知を受け取るために実行しようとしていますが、どのコマンドでも可能です。 ...

Admin

想像する
socat

想像する

想像する socatUDPデータグラムメッセージをブロードキャストアドレスに送信しようとしています。 受信側では、次のように実行しますsocat(root権限を使用)。 socat UDP-LISTEN:1011 - 次のコードを使用してroot権限でメッセージを送信しようとしています。 echo -n "test" | socat - UDP-DATAGRAM:255.255.255.255:1011,broadcast 観察された行動 1025より低いポート(特権ポートなど)を使用すると、ブロードキャストデータグラムメッセージが破棄されるように見えま...

Admin

socat:シェルを使用して簡単な二重通信を実行するには?
socat

socat:シェルを使用して簡単な二重通信を実行するには?

リモートサーバーへのTCP接続を作成し、socatクライアントが送信します。 画像ファイルの操作("convert"、 "open"など) イメージ(バイナリコンテンツ)自体 その後、サーバーは与えられたタスクを使用して画像を処理します。 私の最初の考えは、バイナリコンテンツの前にこのテキスト操作タイプを渡すことでした。 # client socat tcp:server:9999 -\ < <(echo "open"; cat path/to/imgfile) # server socat tcp-listen:9999 - | ...

Admin