問題タブ [networkmanager]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
dhcp - Network Manager (nmcli) を使用して DHCP を構成し、DHCP が失敗した場合にフォールバック静的 IP アドレスを使用する
私は通常、開発中に静的 IP アドレスで接続する組み込み Linux デバイスを使用しています。ただし、オンサイトでは DHCP を使用して接続する必要があるため、別のネットワーク上のフォールバック静的 IP アドレスを使用して、プライマリ DHCP 接続をセットアップしたいと考えています。これは可能ですか?
nmcli を使用して DHCP 接続を構成し (IPV4.method=manual)、追加の静的 IP アドレスを正常に追加できます。DHCP サーバーが存在する場合は両方が同時に存在しますが、DHCP サーバーが存在しない場合は、静的 IP アドレスを含めて接続が無効になります。
また、eth0 に割り当てられた複数の接続、つまり 1 つの静的接続と 1 つの DHCP の設定を試みました。
ただし、他の障害が発生した場合に手動で有効にする必要があるため、これは要件を満たしていません。もちろん、スクリプトを実行して接続ステータスを確認し、必要に応じて他の接続を有効にすることもできますが、これはネットワーク管理者の現実的な期待だと思いました。
ネットワーク管理者に 1 つの接続を試行し、これが失敗した場合は別の接続を試行するように指示する方法はありますか?
Ubuntu 18.04 を使用しています。
java - networkmanager の直接 dbus 制御で nmcli --ask をシミュレートする
私は Java ソフトウェア製品を使用しており、 nmcliexec()
への呼び出しを、dbus を介して NetworkManager をより直接制御するものに置き換えています。私は行き詰まっています。具体的には、そのビット。nmcli connection up (ourconnection) --ask
--ask
NetworkManager のドキュメントに記載されているように、ActivateConnectionの呼び出しになることは理解していますが、エミュレートする方法がわかりません。を指定すると、それは NetworkManager が取得して実行するオプションですか、それとも NetworkManager にパスワードを渡す前にパスワードを要求するオプションですか?--ask
--ask
nmcli
この質問は具体的には--ask
; リフレクション API 呼び出しから取得した Java クラスを使用して dbus を介して NetworkManager と対話する方法を一般的に理解しており、SSID、デバイス、および接続のリストを取得したり、AccessPointAddedなどのシグナルのハンドラーを設定したりしています。しかし、人間のユーザーにパスワードを要求するようにプログラムで NetworkManager に指示する方法がわかりません。
java - 2019年にJavaから「unix-java」にリンクする方法
ここから NetworkManager/DBus コードを使用しています。正常にビルドされますが、実行時に以下が生成されます。
これは Maven プロジェクトです。別のアーティファクトまたは宣言をプルすることで、この問題を解決できますか? 以前はイントロスペクションによって生成された独自のクラスを使用していたため、古いコードを使用しているかどうかを解決しようとして、10 年以上前のものを見て一日中ぐるぐる回っていましたが、明らかにこの追加のライブラリが必要なようです.
それとも、この unix-java ライブラリは、ディストリビューションのパッケージ マネージャーを介して取り込まなければならないものであるという答えですか? それかemerge
、apt-get
どちらか。
java - dbus NetworkManager: Java で DBusInterface パラメータとして「/」を指定
でワイヤレス接続をアクティブ化するためのドキュメントには、2 番目と 3 番目のパラメーターとして指定して、dbus に適切なデフォルトを選択させるActivateConnection
ことができると書かれています。"/"
Java の関数のバインドは typeDBusInterface
であるため、どのように行うのですか? あなたはほとんど書くこと(DBusInterface)"/"
ができませんよね?
誰かが上記に答えることができれば、私は非常に感謝します. この分野についてもう少し時間や知識がある人にとっては、私が解決しようとしている本当のActivateConnection
問題は、呼び出しがクラッシュすることです。これがクラッシュに至るまでの私のコードです。このインターフェイスを参照します。
そして、この出力を生成します(SOによって挿入された色付け):
誰かがそれの何が問題なのかについての指針を与えることができれば、私はさらに感謝します.
dns - ネームサーバーは、ubuntu 18.04 の openconnect と openconnect-gnome で異なる方法で更新されます
これはnetwork-manager-openconect-gnome
、Ubuntu 18.04 以降の新しい問題のようです。
opeconnect およびCisco AnyConnect 互換 VPN (openconnect)sudo apt install network-manager-openconnect-gnome
との gnome 統合を取得するためにインストールします。
余談ですが(実際に関連する可能性があります)*.local
、解決するアドレスを取得するためにこれを行います:
sudo ln -sf /run/systemd/resolve/resolv.conf /etc/resolv.conf
systemdのドキュメントに従ってdns
前mdns4_minimal
に移動/etc/nsswitch.conf
gnome ネットワークマネージャーを介して openconnect で VPN に接続すると、VPN アドレス (仕事用のサイト) が解決されません。通常のサイトは引き続き期待どおりに機能します。
コマンドラインでopenconnectを使用してVPNに接続するとsudo openconnect vpn.mycompany.com
、VPNアドレス(仕事用のサイト)が解決されます。通常のサイトは引き続き期待どおりに機能します。
/etc/resolv.conf
これらの VPN 接続方法のそれぞれに違いがあるかどうかを確認すると思いましたが、確かに 1 つあります。
コマンドラインでopenconnect(動作中):
openconnect gnome 統合(機能していません):
nameserver を削除 (またはコメントアウト) すると192.168.1.1
、作業ファイルと非作業ファイルの内容が異なります...すべてが期待どおりに機能します。会社内のアドレスを解決でき、通常のサイトは期待どおりに機能します。
これは、Fedora では発生しません。すべてがすぐに使用できます。network-manager-openconnect-gnome
パッケージの動作が異なる理由、またはパッケージなしで動作させる方法があるかどうかはわかりません
- 手動でファイルを編集します。
openconnect
コマンドラインからツール を使用し、そのコマンドを実行しているターミナルを開いたままにします。