Todd Pula. I have this problem too. version 12.4 service timestamps debug datetime msec service timestamps log datetime msec no service password-encryption ! The issue I face, I cannot connect to the local LAN - VLAN 10.
このドキュメントの情報は、次のソフトウェアとハードウェアのバージョンに基づくものです。ASA に接続しているときに VPN Client にローカル LAN へのアクセスを許可するには、ASDM を使用する代わりに ASA CLI で次の手順を実行することもできます。Cisco AnyConnect セキュア モビリティ クライアントを ASA に接続して設定を検証します。シスコは世界中のユーザにそれぞれの言語でサポート コンテンツを提供するために、機械と人による翻訳を組み合わせて、本ドキュメントを翻訳しています。 ただし、最高度の機械翻訳であっても、専門家による翻訳のような正確性は確保されません。 シスコは、これら翻訳の正確性について法的責任を負いません。原典である英語版(リンクからアクセス可能)もあわせて参照することを推奨します。Cisco VPN Client または Cisco AnyConnect セキュア モビリティ クライアントが ASA への接続中にローカル LAN にアクセスすることを許可するにはこれらのタスクを完了します。本書の情報は、特定のラボ環境にあるデバイスに基づいて作成されたものです。 このドキュメントで使用するすべてのデバイスは、初期(デフォルト)設定の状態から起動しています。 稼働中のネットワークで作業を行う場合、コマンドの影響について十分に理解したうえで作業してください。ローカル LAN アクセスを許可するために、Cisco AnyConnect セキュア モビリティ クライアントの [Preferences] タブで選択する必要がある項目を次に示します。次に、XML で VPN クライアント プロファイルを設定する例を示します。Diagnostics and Reporting Tool(DART)から AnyConnect ログを調べると、ローカル LAN アクセスを許可するパラメータが設定されているかどうかを判断できます。このドキュメントは、機能しているリモート アクセス VPN 設定が ASA にすでに存在していることを前提としています。ASA に接続しながら、VPN Client にローカル LAN アクセスを許可するには、ASDM で次の手順を実施します。クライアントは一般的なスモールオフィス/ホームオフィス(SOHO)ネットワーク上にあり、インターネット経由で本社に接続しています。ASA でスプリット トンネリングを設定する場合とほぼ同じように、ローカル LAN アクセスの許可には、アクセス リストが使用されます。 ただし、アクセス リストで定義されるのは、暗号化するネットワークではなく、暗号化しないネットワークです。 また、スプリット トンネリング シナリオとは異なり、リスト内の実際のネットワークを知る必要はありません。 その代わりに、ASA は、クライアントのローカル LAN を意味すると理解されているデフォルト ネットワークの 0.0.0.0/255.255.255.255 を供給します。スプリット除外トンネリングでは、AnyConnect クライアントで [AllowLocalLanAccess] を有効にする必要があります。 すべてのスプリット除外トンネリングは、ローカル LAN アクセスと見なされます。 スプリット トンネリングの除外機能を使用するには、[AnyConnect VPN Client preferences] で [AllowLocalLanAccess] プリファレンスを有効にする必要があります。 デフォルトでは、ローカル LAN アクセスはディセーブルになっています。 すべてのインターネット トラフィックが暗号化されずに送信される従来のスプリット トンネリング シナリオとは異なり、VPN クライアント用にローカルの LAN アクセスを有効にすると、それらのクライアントは、存在する場所のネットワーク上にあるデバイスだけと暗号化せずに通信することを許可されます。 たとえば、自宅から ASA に接続しながらローカル LAN アクセスが許可されるクライアントは、自分のプリンタに出力して印刷することはできますが、インターネットにアクセスするには、最初にトンネル経由でトラフィックを送出する必要があります。このセクションでは、設定のトラブルシューティングに役立つ情報を提供します。
Cisco VPNクライアントはマジックを使用できません。それはまだ私のコンピューターで実行されているソフトウェアです。マシンのネットワークに干渉するためにどのメカニズムを使用していますか?IP / ICMPパケットがネットワークに到着するとどうなりますか?ネットワークスタックのどこでパケットが食べられますか?iptables-saveを使用してファイル内のフィルターを取得し、必要に応じてINPUTおよびOUTPOUTアクセス行を追加し、iptables-restoreを使用してファイルを再適用します。とにかく、それはインストールするために管理者権限を必要とするアプリであり、実行中にあなたがすることを非常にうまくフィルタリングするかもしれません...些細なハックの問題は、1つのCPUコアが常に100%になり、vpn接続がアクティブであるかどうかに関係なく、ハードウェアCPUスレッド数を1つずつ効果的に削減することです。コードが行っていた選択は、ルーティングテーブルが変更されたときにvpnagentdデータを送信するnetlinkソケット上にあることに気付きました。vpnagentdは、netlinkソケットに新しいメッセージがあることに気づき、それに対処するためにrouteCallBackHandlerを呼び出しますが、些細なハックは新しいメッセージを消去しないため、何度も何度も呼び出され続けます。上記の新しいコードはネットリンクデータをフラッシュするため、CPUを100%使用する無限ループは発生しません。私はそれを正しく理解しているかどうかわかりませんが、最初に私の理解を明確にします:AnyConnectが混乱するため、iptablesを修正します。Anyconnectの問題は、最初にルーティングテーブルを変更し、次に手動で変更した場合にそれをベビーシットして修正することです。これの回避策を見つけました。バージョン3.1.00495、3.1.05152、3.1.05170、およびおそらく3.1ファミリーの他のすべてで動作します。他のバージョンでも動作する可能性がありますが、少なくとも同様のアイデアは、コードが書き換えられないと仮定して動作するはずです。幸いなことに、シスコはベビーシッターの「baby is awake」コールを共有ライブラリに入れました。そのため、LD_PRELOADを介したvpnagentdによるアクションを防止するという考え方です。これは私のルーティングテーブルがどのように見えるかです(VPNがオンのときに手動で変更した後)仮想マシンを使用し、VM内でAnyConnectを実行し、作業環境と会社のネットワーク間のメディエーターとしてVMを使用するソリューションは、「最愛の」IT部門がVPNを介して0.0.0.0をルーティングするため、ローカルネットワーク(これを含む)ローカルPCとVMの間)は、VPN経由でルーティングされます(sic!)。以前は、たとえば、次のように、より高いメトリックでLANトラフィックをキャプチャするルートが追加されるだけの問題だと考えていました。参考のため、VPNが切断された(変更されていない)場合のルートテーブルの様子を以下に示します。Cisco VPNクライアントドライバーは、ネットワークスタック内で何を実行して、ローカル管理者がマシンを管理する機能を無効にしますか?Cisco VPNを使用して接続する場合、サーバーはクライアントにローカルLANアクセスを防止するよう指示する必要があります。特定のLANホストへのアクセスのみを許可するために、ここでさらに高度な操作を行うことができます。このサーバー側オプションをオフにできないと仮定した場合、Cisco VPNクライアントとの接続中にローカルLANアクセスを許可するにはどうすればよいですか?そして、どの通話に参加しているかを確認します。次に、どの通話を切りたいかを推測し、hack.cに追加して再コンパイルします。@Sasha Pachevが投稿したソリューションを適用しようとしましたが、最終的に.dllにパッチを適用して、関数の先頭で0を返すようにしました。最終的には、動的ライブラリとのいくつかの戦いの後、自分のニーズに応じてルーティングテーブルを変更することができましたが、明らかにそれだけでは十分ではありません!たとえば、192.168.0のローカルネットワークにアクセスする場合ローカルLAN(たとえば、10.0.0.0 / 16、およびリモートCisco VPN Server(たとえば、64.0.0.0 / 16)があります。CiscoVPNクライアントを介してVPNサーバーに接続したいが、まだ必要です。この場合、VPN接続から10.0.xx / 16全体を分離する必要があります。次のルートをMacクライアントに追加する必要があります。これは非常に複雑ですが、VMWare Playerなどを使用して最小限のVMを作成し、その中でCisco AnyConnect VPNクライアントを実行すると、VMWare仮想ネットワークアダプターを使用してルーティングを設定したり、単にCisco SSL VPNを介して必要なリソースにアクセスするためのVMおよび実際のマシンとの間でファイルを「ドラッグ/ドロップ」します。上記のroutesメソッドのように、コールバックをインターセプトして解決しようとしていますが、対応するコールバックまたはメソッドがまだ見つかりません。私の会社はまだそのVPNを使用しています。vpncクライアントは単にiptables設定をそのように変更するだけです:このハックの以前の単純なバージョンは、「0を返す」だけの機能を提供していました。-そのポスターは、「これまでに観察した唯一の副作用は、vpnagentdがtopによって報告されたCPUの100%を使用していることですが、全体のCPUはユーザー3%、システム20%であり、システムは完全に応答します私はそれを追い詰め、アイドルが両方からすばやく戻ったときにループで2つの選択を行っているようですが、それは読み取りも書き込みもしません-LD_PRELOADで切り取った呼び出しは読み取ることになっていたと思います。それを行うために、しかし今のところ私にとっては十分です。誰かがより良い解決策を持っているなら、共有してください。」ここで、en1は、LANに接続するためのインターフェースです。WindowsとLinuxでも同じものを追加できることを知っています。そして、それはまだルーティングの問題にすぎないかもしれませんが、ルートを追加または削除しようとすると失敗します。Cisco VPNクライアントプロファイルをインポートできます。Cisco VPN Clientバージョン5.0.05.0290を使用し、Shrew VPN(バージョン2.1.7)をインストールし、Ciscoプロファイルをインポートした後、Shrew VPN接続を追加設定することなく、企業VPNに接続しながらローカルLANにアクセスできました(またはソフトウェア)。Cisco VPNクライアントドライバーは、ネットワークスタック内で何を実行して、ローカル管理者がマシンを管理する機能を無効にしますか?Cisco VPNに接続しているときにローカルLANアクセスを維持するにはどうすればよいですか?コメントを追加できないため、ここに投稿します。Windowsで実行しています。 Cisco VPN Client ルータ VPN#show run Building configuration... Current configuration : 2170 bytes ! hostname VPN !