タグ付けされた質問 「networking」

UNIXシステムでのネットワーク接続の管理と使用

3
インターフェイスを起動せずにネットワークケーブルが接続されているかどうかを確認する
20台までのリモートサーバー上のNIC(すべてのサーバーで2〜6枚のNIC)を識別しようとしています。まず、すぐに使えるものと無料のものを特定したいと思います。物理メディアの状態を確認するにはどうすればよいですか?私はを含むいくつかの方法を、知っているifconfig|grep RUNNING、ethtool、cat /sys/class/net/eth0/carrier、しかし、すべての彼らは、インターフェイスがアップしていることが必要です。すべてのインターフェースをアップしたくありません。理由は不明ですが、ネットワーク内で有効化されたインターフェイスを構成したくないので、インターフェイスを構成しません。これを回避する方法はありますか? それとも私は間違っていますか?すべてのインターフェイスが起動している(そして構成されていない)ことに何の問題もありませんか?接続されていても?

2
Linuxの最小TCP MSS
LinuxのTCP MSSは少なくとも88(include / net / tcp.h)でなければなりません: /* Minimal accepted MSS. It is (60+60+8) - (20+20). */ #define TCP_MIN_MSS 88U 私の質問は、「60 + 60 + 8」をどこで思いついたのか、そしてなぜですか?20 + 20は、IPヘッダー+ TCPヘッダーから取得されます。 編集:ヘッダーを詳しく見てみた後、式は次のように私を探します: (MAX_IP_HDR + MAX_TCP_HDR + MIN_IP_FRAG) - (MIN_IP_HDR + MIN_TCP_HDR) 問題はまだ残っています:なぜですか?なぜLinuxカーネルはこの公式を使用して、たとえば20バイトのTCPセグメント(の強制フロー)を禁止するのですか?ここでiperfを考えてください。 EDIT2:これが私のユースケースです。ソケット/接続のMSSを低く設定すると、スタックによって送信されるすべてのパケットのサイズが小さくなります。パケット/秒のテストでiperfを使用する場合、MSSを低く設定したいと思います。MSSのこの下限のため、128バイト(142バイトのイーサネットフレーム)より小さいIPパケットをワイヤで取得できません。RFC 2544に従って、64バイトのイーサネットフレームサイズにできるだけ近い値を取得したいと考えています。理論的には、18 + 20 + 20 <64が可能です。

4
現在のネットワーク使用率をどのように判断すればよいですか?
Webサイト上のDebianボックスの1つのインターフェースの現在のネットワーク使用状況(帯域幅使用状況)を表示したい。「52 Mbit / s」のような単純な数値だけであり、非常に精巧で正確であるとは想定されていません。 などの一般的なネットワーク帯域幅モニターでは、このiftopような値を簡単に抽出する方法がありません。 どうすればそれを取得できますか? たとえば、/proc/net/dev数分おきに解析すると思います。これが本当にこれを行う最善の方法であるかどうかはわかりません。

3
HyperV上のCentOS-ifconfigにeth0がない?
私が立ち上げましたCentOSのは HyperVの中にインストールし、NICに私が上でやったのと同じ方法割り当てられたUbuntuの VMを、しかし、デバイスは、単にピックアップされていません。 ループバックのみがによって見つかりifconfigます。 これをトラブルシューティングするにはどうすればいいですか?

1
ユーザープログラムからTUN / TAPトンネルを利用する方法
私は最近、Linux TUN / TAPインターフェースの存在を発見し、まだそれらを理解しようとしています。基本的な概念はわかったと思います。ネットワークインターフェイスをエミュレートする疑似デバイスが作成され、データをハードウェアに渡す代わりに、ユーザースペースプログラムに渡されます。 このトンネルを利用するように無関係のプログラムをどのように指示しますか? たとえば、トンネルが作成される前のシステムには、eth0とlo、通常のイーサネットインターフェイス(ローカルネットワークに配線されている)、およびループバックインターフェイスのみが含まれています。プログラムがトンネルを作成して構成した後、ローカルネットワーク上にあるが使用されていないIPアドレスを与えた新しいインターフェイスgr0があります(したがって、すべて同じサブネット上にいます)。無関係なプログラムにこの「トンネル」を利用させるにはどうすればよいですか?TCP接続を利用するシンプルなPythonメッセージパッシングクライアント/サーバーアプリがあるとしたら、トンネルを使用するように構成するにはどうすればよいですか? 基本的なことを忘れてしまったことをお詫びしますが、いつものように、物事の構図で混乱しました。繰り返しますが、私が望んでいるのは、このトンネルを利用する単純なTCPプログラムを作成することだけです。 ありがとう!

1
確実に信頼できない接続を診断する方法は?
私が今住んでいる場所では、インターネット接続(有線)が次の奇妙な症状を示しています。ホスト名とIPアドレスのどちらを使用しているかに依存しないようです。 pingの動作 スカイプは働く Wgetは接続しますが、応答を受け取りません。(タイムアウトになるまで、「HTTP要求が送信され、応答を待機しています」で待機し続けます。) それが機能するドメインの小さなサブセットを除いて。 sshコマンド(ssh host ls)が機能します。 対話型のsshはしばらくの間は機能しますが、たとえば最初のときなど、ls毎回同じ時点ですぐにハングします。 Windowsでは、すべてが正常に動作します。 これをさらに診断するにはどうすればよいですか?これまでのところ、私はアプリケーション層を見てきました。明らかなインターネット接続があるので、Firefoxをトンネルする方法がいくつかあるに違いありませんが、最初に問題を突き止めたいと思います。 大きなパケットが通過しないことに関連している可能性が非常に高いです。MTUがあることがわかりましたが、eth0に設定しても問題は解決しません。私はPPPOEとルーターの背後にいると思います。外部IPはWindowsとLinuxで同じです。 一部のコマンドの出力: ip link show 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 16436 qdisc noqueue state UNKNOWN link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1024 qdisc mq state UP qlen 1000 link/ether 00:26:aa:aa:aa:61 brd ff:ff:ff:ff:ff:ff 3: wlan0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc …

2
ブロードキャストをpingできません
私たちは、Fedora 13のハブ(スイッチではなくハブ)に接続された4台のコンピューターを実行しています。これらは、最近学校に戻るために私たちを残した同僚からのイメージを使用してインストールされました。放送を利用していますが、この画像を使い続けたいと思います。ifconfigを使用して各コンピューターの静的IPをセットアップしました(これもip addr addを試しました)10.0.1.11/24から10.0.1.14/24までです。これらの設定を使用すると、実際にブロードキャストをpingできないようです。 10.0.1.255に正しく設定します。tcpdumpを使用すると、ping要求を呼び出すコンピューターからの発信ping要求以外は何も表示されません。誰かが何かアイデアを持っていますか、それとも完全に何かを見逃していますか?
9 linux  networking  ip  ping 

1
デュアルネットワーク接続
Ubuntu 10.10ボックスにUSBセルラーモデムとホームLAN接続があります。 どちらも独立して動作します。 両方を同時に接続する方法を知り、どのアプリケーションがどのデバイスを使用してインターネットに接続するかを指定できるようにしたいと考えています。 誰でもこれを行う方法を知っていますか?

2
自動再接続WIFIメソッドを理解しようとしています
私はこの投稿からWIFIドングルを再接続するこの方法を見つけました。しかし、私はそれを試して実装する前に、それがどのように機能するかを明確にしたいと思います。 に移動し/etc/ifplugd/action.d/、ifupdownファイルの名前をに変更します ifupdown.original。 次に行いますcp /etc/wpa_supplicant/ifupdown.sh ./ifupdown。 最終的に: sudo reboot いつ/etc/ifplugd/action.d/ifupdown呼び出されますか? スクリプトは/etc/wpa_supplicant/ifupdown.sh基本的に平易な言葉で何をするのか、それは私にはかなり複雑に見えます。いつ呼ばれるのか 手順1〜3を実行すると、私のWIFIが機能しなくなる他の予期しない問題が発生する可能性がありますか?私はこれをSSH経由でRaspberry PIに実装しようとしていますが、キーボードやモニターを手の届きにくい場所に置く必要はありません。 いろいろググってみましたが少し迷ってしまいました!

1
Debian Stretchソースのtcpポートは*常に*です
Azureロードバランサーを使用していくつかの奇妙な動作をデバッグしているときに、ローカルのDebian Stretch TCPスタックが偶数番号のポートとのTCP接続しか確立していないことに気付きました。奇数のソースポートで単一のTCPハンドシェイクを開始しません。それは意図されていますか?

3
受け入れキューの長さを監視するにはどうすればよいですか?
私の仮説があります。TCP接続が、サーバーが到達できるよりも速く到達することがありaccept()ます。キューがオーバーフローし、問題が発生するまでキューに入れられます。 これが起こっていることをどのように確認できますか? 受け入れキューの長さまたはオーバーフローの数を監視できますか?どこかに露出しているカウンターはありますか?

13
Centos 7:ネットワークの起動/停止に失敗しました:トランクインターフェイスのインターフェイスを構成してください
サーバー(Centos 7)で構成されたスイッチは、VLAN#115,2014のトランクとして構成されています。ロードしました # lsmod | grep 8021q # modprobe 8021q VLAN#115を使用してサーバーにIPアドレスを構成したい次の構成を実行します。 ifcfg-em1 TYPE=Ethernet BOOTPROTO=none DEFROUTE=yes PEERDNS=yes PEERROUTES=yes IPV4_FAILURE_FATAL=no IPV6INIT=yes IPV6_AUTOCONF=yes IPV6_DEFROUTE=yes IPV6_PEERDNS=yes IPV6_PEERROUTES=yes IPV6_FAILURE_FATAL=no NAME=em1 UUID=c0c4d851-d762-4301-8c20-d6128aee5261 DEVICE=em1 ONBOOT=yes ifcfg-em1.115 TYPE=Ethernet BOOTPROTO=none IPADDR=172.31.141.242 PREFIX=24 GATEWAY=172.31.141.1 DEFROUTE=yes PEERDNS=yes PEERROUTES=yes IPV4_FAILURE_FATAL=no IPV6INIT=yes IPV6_AUTOCONF=yes IPV6_DEFROUTE=yes IPV6_PEERDNS=yes IPV6_PEERROUTES=yes IPV6_FAILURE_FATAL=no NAME=em1.115 UUID=c0c4d851-d762-4301-8c20-d6128aee5261 DEVICE=em1.115 VLAN=yes ONBOOT=yes ネットワークサービスを再起動できなくなりました。表示されるエラーメッセージは次のとおりです。 …

2
systemdがDebian 8.0 Jessieの起動時にネットワークを待機する時間が長すぎる
私のシステムは、RANのDebian Wheezyに7しばらくますが、Debianの8ジェシーにアップグレードした後、比較的高速に起動し、したがってからSysVinitのsystemd、それは仕方遅く、道になりました。 起動を遅くしているのはネットワークです。ネットワークインターフェースの育成待ちが1分を超えています。/etc/network/interfaces起動プロセスに何が影響しているのかわかりません。そのため、ここで全体を説明します。 / etc / network / interfaces: allow-auto lo iface lo inet loopback auto wlan0 iface wlan0 inet static address 192.168.150.1 netmask 255.255.255.0 auto eth1 iface eth1 inet manual up ifconfig $IFACE 0.0.0.0 up down ifconfig $IFACE down auto eth2 iface eth2 inet manual up ifconfig $IFACE 0.0.0.0 …

3
bashスクリプトでネットワークを待つ
ネットワークの稼働とネットワーク共有のマウントに依存するスクリプトを実行しています。スクリプトはログイン時に実行されます(起動後に自動的に実行されます)。問題は、スクリプトが実行されるときまでに、通常はまだIPアドレス(DHCP)を持っていないことです。現時点では15秒間スクリプトをスリープ状態にしていますが、何か問題があるかどうかをユーザーに通知できるようにしたいので、この方法はまったく好きではありません。 私の計画は、IPアドレスをまだ持っていないときにループし、持っているときに続行することです。重要なのは、しばらくするとタイムアウトになることです。私が思いついたのはですがif [ ifconfig | grep "192.168.100" ];、何が起こるかは、grepがを消費し、];それが気に入らないことです。それからbashも動揺します、なぜならそれは];どのgrepが食べたかを見つけることができないからです。そして、私はタイムアウトを実装していません。 誰かが変数を保持し、たとえば各反復で1秒間スリープし、この変数を毎回増やすことを提案しました。これが私の完全な(動作しない)スクリプトです(私はbashスクリプトにかなり慣れていません)。 x=0 while [ ifconfig | grep "192.168.100." > /dev/null ]; do echo "no nework" if "$x" -gt 200; then #Time out here exit 1 x=$((x+1)) sleep .1 fi done #continue with rest of script... 正しい方向のポインタがあれば大歓迎です!

1
ネットワークインターフェイスを使用してプロセスを検索する
ネットワークインターフェイスを安全にシャットダウンする方法を見つけようとしています。つまり、プロセスを妨害することはありません。このため、現在そのインターフェイスを使用しているプロセスを見つける必要があります。ツールが好きss、netstatまたはlsofプロセスがオープンしているソケットを持って便利示しているが、それらは表示されませんwpa_supplicant、dhcpcd、hostapdなど。 これらのプロセスを一般的な方法で検出する方法はありますか?dhcpcdは、たまにソケットを開くだけのプログラムなので、そうではないかもしれませんが、wpa_supplicantとhostapdがそのインターフェイスに対して「何かを」実行して、検出可能であり、おそらく関連するPIDにもつながると想定しています。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.