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

Linuxネットワークとは、Linuxを実行するサーバーによって実行されるネットワーク機能を指します。ルーターまたはファイアウォールとして動作するLinuxサーバーが最も一般的なアプリケーションです。

8
Docker pull:TLSハンドシェイクタイムアウト
私はこれを一貫して取得します(Ubuntu 16.04 LTS): $ docker pull nginx Using default tag: latest Error response from daemon: Get https://registry-1.docker.io/v2/: net/http: TLS handshake timeout ただし、カールTLSは正常に機能します(認証エラーは別として)。 $ curl https://registry-1.docker.io/v2/ {"errors":[{"code":"UNAUTHORIZED","message":"authentication required","detail":null}]} そして、小さなgolangプログラム(dockerを模倣する)でもうまく動作します。 package main import ( "fmt" "io/ioutil" "net/http" ) func main() { resp, err := http.Get("https://registry-1.docker.io/v2/") if err != nil { panic(err) } …

1
SynProxyは、非対称デュアルブリッジトポロジでsyn ackパケットを返すことができません
172.16.11.5および172.16.10.6からsshで接続すると、以下に示すように非対称デュアルブリッジトポロジがありますが、SynProxyが原因で接続できません。 ------- | | ---o--- 172.16.11.5 | | -----o----- 172.16.11.6 | | | | default gw 1.1.1.1 | | 1.1.1.2/30 --o----o--- 2.2.2.2/30 | | | | | | (enp10s0f0) ----o----o----- | | | XXX | | | | br1 br0 | synproxy | | ----o----o----- | | | | | …

2
arp-requestsは特定のノードからは見ることができません
を使用して、オープンなアドホックWLANを作成しますiwconfig(同じ問題がありwpa_supplicantます)。次の図に示すように、ネットワーク上に4つのノードがあります。ノードは、ubuntu 12.04およびdebian squeezeを実行し、3.7.1、3.5、および3.2カーネルを備えています。私はすべてAR9271チップセットとath9k_htcドライバーを備えた2つの異なるUSBドングルブランド(TPリンクとZCN)を使用しています(ここではlsusb出力とethtool出力です)。 私が経験している問題は、TPリンクusb wifiドングルを持つ2つのノード(10.0.0.2および10.0.0.5)がネットワーク上の任意のノードをpingできること、およびその逆です。ただし、ZCN wifiドングルを持つ他のノード(10.0.0.6および10.0.0.7)は相互にpingできませんが、TP-link wifiモジュールとの通信に問題はありません。tcpdumpショー10.0.0.6と10.0.0.7例えばそのARP要求を、見ることができません 20:37:52.470305 ARP, Request who-has 10.0.0.7 tell 10.0.0.6, length 28 20:37:53.463713 ARP, Request who-has 10.0.0.7 tell 10.0.0.6, length 28 20:37:54.463622 ARP, Request who-has 10.0.0.7 tell 10.0.0.6, length 28 20:37:55.472868 ARP, Request who-has 10.0.0.7 tell 10.0.0.6, length 28 20:37:56.463439 ARP, Request who-has 10.0.0.7 tell 10.0.0.6, …

5
tc u32 —最近のカーネルでL2プロトコルを一致させる方法は?
ハッシュフィルタリングを備えた、Linuxブリッジで構築された素晴らしいシェーパーがあります。要するに、br0接続externalとinternal物理インターフェース、VLANタグ付きパケットは「透過的に」ブリッジされます(つまり、VLANインターフェースはありません)。 現在、異なるカーネルは異なる方法でそれを行います。正確なカーネルバージョンの範囲が間違っている可能性がありますが、ご容赦ください。ありがとう。 2.6.26 したがって、debianでは、2.6.26以降(2.6.32まで、私は信じています)---これは動作します: tc filter add dev internal protocol 802.1q parent 1:0 prio 100 \ u32 ht 1:64 match ip dst 192.168.1.100 flowid 1:200 ここで、「カーネル」は0x8100の「プロトコル」フィールドの2バイトに一致しますが、IPパケットの先頭を「ゼロ位置」としてカウントします(少し不明瞭な場合は英語でごめんなさい)。 2.6.32 繰り返しますが、debian(私はバニラカーネルを構築していません)では、2.6.32-5 ---これは動作します: tc filter add dev internal protocol 802.1q parent 1:0 prio 100 \ u32 ht 1:64 match ip dst 192.168.1.100 at 20 …

1
NAPI対適応割り込み
ネットワーク負荷が高い場合の割り込みオーバーヘッドを軽減するために、次の2つの技術がどのように使用されているのか説明してください。 Adaptive-rx / Adaptive-tx、および NAPI; Linuxカーネルソースレベルにより近い違いを説明する答えをいただければ幸いです。また、〜400Mbpsの負荷でNICにポーリング/割り込み合体モードを強制する方法を聞きたいです。 より多くの背景: 問題は、bnx2およびe1000ドライバーが「ethtool -C adaptive-rx on」コマンドを無視することです。これはおそらく、これらのドライバーが適応割り込みをサポートしていないためです。Broadcomプログラマーのリファレンスマニュアルには、この機能はBCM5709 NICハードウェアでサポートされるべきであると書かれていますが。 そこで、NAPIを試し、netif_napi_add()関数呼び出しで重みを64から16に減らして、はるかに低い負荷でNICをポーリングモードに強制することにしましたが、残念ながらうまくいきませんでした。NAPIはNICで特別なハードウェアサポートを必要としないと思いますが、それは正しいですか? 私が使用しているハードウェアはBCM5709 NIC(bnx2ドライバーを使用)です。OSはUbuntu 10.04です。CPUはXEON 5620です。

2
内部ネットワークモードでVirtualboxゲストをPXEブートしますか?
これが私のディストリビューションのパッケージに固有のものなのか、vboxの制限なのかはわかりません。だから、どんな助けも感謝します。 さて、VMのネットワークがあり、1つのVMが「内部」ネットワーク内の他のVMのNATとして機能しています。それらのVMの1つがDHCP&TFTPサーバーを実行しており、このサーバーから他のVMを起動するだけでよいのですが、ネットワークから起動するときにVMを起動するのは「致命的:起動メディアから読み取れません!」停止」。 vboxは非常に使いやすく、実験も簡単なので、これはちょっとした喜びです。しかし、このエラーを回避することはできません。助けて ?


2
Debian 7 IPv6リンクローカルアドレスはどのように設定されますか?
dhclientがeth0で実行されている場合、DHCPサーバーからIPv4アドレスを取得し、eth0に接続されているScope:Link IPv6アドレスを取得しているようです。 inet6 addr: fe80::a00:27ff:fed0:4d41/64 Scope:Link しかし、dhclient-scriptからは、そのアドレスがどのように追加されているのかわかりません。静的IPアドレスを持つ別のインターフェイスで、リンクローカルIPv6アドレスを追加したいのですが、Macを知らずにそれを行うための一般的なコマンドがあるかどうか疑問に思っていました。 編集: 「ip link set dev ethX up」または「ifconfig ethX up」を実行すると、カーネルがリンクローカルアドレスを割り当てるようです。しかし、私の場合、DHCPを使用しているインターフェースにケーブルが接続されていて、静的にセットアップしていたインターフェースにケーブルが接続されていませんでした。月曜日まで確認できませんが、リンクがない場合、カーネルはインターフェイスにリンクローカルアドレスを割り当てないと思います。

2
LinuxカーネルによってFIN_WAIT2状態の接続が閉じられないのはなぜですか?
Kubernetesの一部であるkube-proxyと呼ばれる長命のプロセスに問題があります。 問題は、時々接続がFIN_WAIT2状態のままになることです。 $ sudo netstat -tpn | grep FIN_WAIT2 tcp6 0 0 10.244.0.1:33132 10.244.0.35:48936 FIN_WAIT2 14125/kube-proxy tcp6 0 0 10.244.0.1:48340 10.244.0.35:56339 FIN_WAIT2 14125/kube-proxy tcp6 0 0 10.244.0.1:52619 10.244.0.35:57859 FIN_WAIT2 14125/kube-proxy tcp6 0 0 10.244.0.1:33132 10.244.0.50:36466 FIN_WAIT2 14125/kube-proxy これらの接続は時間の経過とともに積み重ねられ、プロセスが誤動作します。既にKubernetesバグトラッカーに問題を報告しましたが、そのような接続がLinuxカーネルによって閉じられない理由を理解したいと思います。 そのドキュメント(tcp_fin_timeoutの検索)によると、FIN_WAIT2状態の接続はX秒後にカーネルによって閉じられるはずです。Xは/ procから読み取ることができます。私のマシンでは、60に設定されています。 $ cat /proc/sys/net/ipv4/tcp_fin_timeout 60 正しく理解できれば、そのような接続は60秒で閉じられるはずです。しかし、これはそうではありません、彼らは何時間もそのような状態のままになります。 また、FIN_WAIT2接続は非常に珍しいことも理解していますが(これは、ホストが接続のリモートエンドからのACKを待っていることを意味します。 。 何かできることはありますか? 関連プロセスの再起動は最後の手段であることに注意してください。

3
中国がGoogle Compute Engineサーバーに接続しないようにする
私の会社には、北米でホストされているGoogle Compute Engineサーバーがあります。ポート11に要求を送信する非常に多くの中国のIPアドレスを取得しているため、イングレスの費用がかかります。当社のファイアウォールは、当社のアプリケーションにアクセスするビジネスがないため、すでに中国へのすべての接続をブロックしています。 これらの接続を完全に無視する方法や、帯域幅を使い果たしないようにブロックする方法はありますか?

1
Netstatがハングする:なぜ?
「netstat」と入力したときに、戻るのに5秒以上かかることがあります。他の時間は瞬間的です。 私はサーバー(CentOS 6.4)でこれを数週間観察していましたが、なぜかわかりません!? 誰でも説明できますか?

5
virbr0-nicはどのように作成されますか?
次のような仮想ネットワークインターフェイスを作成するにはどうすればよいvirbr0-nicですか。のようなNICを作成する方法を見つけようとしていますvirbr0-nicが、インターネットで見つけることができるのは、のような物理インターフェースに接続されたインターフェースを作成する方法eth0:0です。私が書くとき # brctl show bridge name bridge id STP enabled interfaces virbr0 8000.525400e0af01 yes virbr0-nic virbr1 8000.525400e8a6b1 yes virbr1-nic vnet1 そうvirbr0するためのブリッジでvirbr0-nic取り付けられています。では、どのようにvirbr0-nicしてvnet1作成されますか?

1
Linuxネットワークをデバッグする方法:アドレスはすでに使用されています
Slackwareのlinuxボックスがあり、localhostの特定のポートでリッスンするサービスを開始できません。straceを使用するbind()と、呼び出しでエラーが発生することがわかりました。エラーはEADDRINUSE (Address already in use)次のとおりです。 bind(3, {sa_family=AF_INET, sin_port=htons(874), sin_addr=inet_addr("127.0.0.1")}, 16) = -1 EADDRINUSE (Address already in use) これは、そのポートでリッスンを開始しようとするプロセスで発生するため、プロセス自体とは関係ありません。上記のstrace出力は、コマンドから取得されますstrace -ff nc -l -p 874 -s 127.0.0.1。 したがって、これはlocalhostポート874ですでにリッスンしているプロセスがあることを示唆しています。しかし、それを見つけることができないようです。次のコマンドはすべて何も返しません。 netstat -aplunt | grep :874 netstat -na | grep :874 lsof -i :874 lsof -i tcp | grep 874 fuser 874/tcp socklist | grep …

1
2つのインターネット接続と1つのLAN接続を備えたマルチホームLinuxロードバランサーを作成する
ええと、これはおそらく回答されました。残念ながら、私はそれが解決策であると思われるものを見つけていません。 私はこれらのページを見て、それらにはいくつかの有用な情報がありますが、完全な解決策ではありません: Linuxでの複数のISP接続の負荷分散とNAT処理 2つのインターネット接続と1つのNICが可能ですか? Linux分割アクセス(複数のインターネット接続と負荷分散) Linuxファイアウォール+負荷分散ISP接続 私はDebian 8、Ubuntu 16.04デスクトップまたはUbuntu 16.04サーバー(正直なところ、おそらくDebian)を使用します。 では、2つのギガビットと3つのNICを搭載し、100 MbpsのオンボードLAN接続をオンボードにします。ISP接続は、両方のNICでPPPoE認証を介してギガビットLANカードを使用します(これが可能でない場合でも、DSLモデムの非ブリッジモードを使用します)。また、両方のネットワークに静的IPが割り当てられます。現在(変更されます)、プライマリ接続には5つのグループがあります。これらのIPアドレスのいずれかに着信するトラフィックを、ネットワーク上の適切なサーバーにルーティングする必要があります。 ここに私の質問があります: どうすれば設定できますか?NATing、IP Chans、IPマスカレード、ルーティングなどを使用していますか? システムに入ってくるトラフィックを外部からネットワーク上の特定のIPアドレスにルーティングするにはどうすればよいですか? 優しくしてください、これは私が以前にこのようなことを試みたのは初めてです:)。 編集1 ネットワークトポロジを追加するのを忘れました: 編集2 何かに気付いた... PPPoE認証を行うために、特定のインターフェイスで資格情報の認証を強制する必要があります。これはどのように行われますか? 私はその質問をここに投稿しました: 2つのインターネット接続と1つのLAN接続を備えたマルチホームLinuxロードバランサーを作成する アップデート1 それでもマルチホップラウンドロビンを機能させることができません。次のサイトに記載されている手順を試してもうまくいきませんでした。 Linuxでの複数のISP接続の負荷分散とNAT処理 Linux-デュアルインターネット接続/負荷分散 HOWTO:Linuxでのマルチルーティング ファイルが既に存在するか、デバイスが無効であるというメッセージが表示され続ける。ここに/私の設定/情報があります IFCONFIG eth0 Link encap:Ethernet HWaddr ec:08:6b:04:8e:ac inet addr:172.16.0.2 Bcast:172.16.0.255 Mask:255.255.255.0 inet6 addr: fe80::ee08:6bff:fe04:8eac/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 …

4
AWS VPC + IPtables + NAT:ポート転送が機能していません
昨日、ここに質問を投稿しましたが、言葉でははっきりしていなかったと思います。ところで、この質問は重複ではありません。 以下のようにAWS VPCセットアップがあります。 目標/問題:インターネットからサーバーAにSSH接続します。そしてそれは働いていません。 サーバーAはプライベートサブネットにあるため、インターネットから直接サーバーAにSSH接続できるように、NATインスタンスでiptables NATを有効にしたい これとこれをフォローしています NATインスタンスで以下のコマンドを実行しました。 NAT# iptables -t nat -A PREROUTING -p tcp --dport 2222 -j DNAT --to-destination 10.0.1.243:22 NATインスタンスでIP転送が有効になっています。 NAT# sysctl -p net.ipv4.ip_forward = 1 MASQUERADEはNATインスタンスで実行されています: NAT# iptables -t nat -vnL POSTROUTING Chain POSTROUTING (policy ACCEPT 6 packets, 312 bytes) pkts bytes target prot opt in …

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