インターネット経由でSQL Serverに接続したい:
しかし、インターネット経由でサーバーに接続できませんでした。
私のLAN IPは192.168.1.24です
インスタンスはデフォルトのインスタンスです
私のパブリックIPは95.218.156.146です(例)
サーバー名のテキストボックスに(192.168.1.24)と入力するとサーバーに接続できますが、195.218.156.146または95.218.156.146、1433と入力すると接続できません
注意:
これを行うための推奨される方法は、2つのサイト間にVPNをセットアップすることです。これを行う手順は、使用されている特定のファイアウォール/ルーターによって異なります。 VPNを使用できない場合は、ポートマッピングを使用して接続をセットアップする方法について次の情報が提供されます。ポートマッピングを使用する場合は、追加のファイアウォールルールと組み合わせてのみ使用し、マッピングされたポートを介してルーティングできる送信元IPアドレスを制限して、地球上のすべてのハッカーがSQL Serverにアクセスできないようにする必要があります。
IPCONFIG / ALL
を実行して、Windows ServerのIP構成を確認します。結果には両方のIPアドレスを含めることができますが、少なくとも内部IP:
-192.168.1.24
-95.218.133.168
次のコマンドでtracerouteを開始します:TRACERT <external IP of server>
。サーバーへのルートを受信したことを確認します。
重要なのは、LANとインターネットから同じことを行うことです。結果は、インターネットチェックでは次のようになります。
1 <1 ms <1 ms <1 ms <IP of your router>
2 <1 ms <1 ms <1 ms <IP of your ISP>
3 <1 ms <1 ms <1 ms <Another IP connecting to your company>
4 2 ms 1 ms 1 ms outside.yourcompany.com [<public IP of your company>]
5 3 ms 1 ms 1 ms dmz.yourcompany.com [<IP of DMZ component>]
6 3 ms 1 ms 1 ms router.yourcompany.com [<IP of router>]
7 3 ms 1 ms 1 ms sqlserver.yourcompany.com [<IP of server>]
ファイアウォールの設定によっては、会社のファイアウォールを通過できない場合がありますが、tracertが正しい方向に進んでいる場合は、その方法を「認識」しています。ファイアウォールがネットワークの外観を誰かに伝えておらず、ポート要求をSQL Serverに転送していない可能性があります(ルーター構成を参照してください)
Protocols for 'MSSQLSERVER'
)'Enabled'
であることを確認します。次に、TCP/IP設定を右クリックして、プロパティを開きます。 [プロトコル]タブで...
a)Enabled
がYes
に設定されていることを再度確認します。
b)設定Listen All
がYes
に設定されていることを確認します。
c)画面は次のようになります。
[IPアドレス]タブに切り替えて、_IPn
を確認します...
a)アクティブはYes
に設定されています
b)有効はYes
に設定されます
c)IPアドレスは外部IPアドレスです(パブリックアドレスが1つしかないため、SQL Serverに外部アドレスを割り当てることができない場合は内部アドレスです)。
d)TCP動的ポートは(値なし/空)に設定されています
e)TCPポートは1433
に設定されています
f)画面は次のようになりますが、IPアドレスが表示されます。
次に、IPAll
部分の設定を確認します。
a)TCP動的ポートは(値なし/空)に設定されています
b)TCPポートは(値なし/空)に設定されています
c)画面は次のようになります。
パブリックIPはサーバーのものではなく、ルーターのものです。サーバーがルーターの背後にある場合は、ルーターが要求をSQL Serverに転送していることを確認する必要があります。この構成設定は、ルーターによって異なります。次に、ルーターを構成するいくつかの例を示します。
- ポート転送 (Zyxel)
- 静的ポート共有のセットアップ (Fritz AVM)
- ルーターでポート転送を構成するにはどうすればよいですか? (D-Link)
提供されているヒントとテクニックを使用して、インターネットからの接続を受け入れるようにSQL Serverを設定できます。
免責事項:インターネット経由でLAN内のデータベースに接続することを許可することは、実際には推奨されません。攻撃される危険があります。