Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Klien dan server koneksi jaringan sering tidak memiliki jalur langsung dan terbuka untuk komunikasi. Paket difilter, dirutekan, dianalisis, dan diubah baik pada mesin titik akhir maupun oleh mesin perantara di jaringan. Terjemahan alamat jaringan (NAT) dan firewall adalah contoh umum aplikasi perantara yang dapat berpartisipasi dalam komunikasi jaringan.
Transportasi Windows Communication Foundation (WCF), dan pola pertukaran pesan (MEPs) bereaksi berbeda terhadap, keberadaan NAT dan firewall. Topik ini menjelaskan bagaimana NAT dan firewall berfungsi dalam topologi jaringan umum. Rekomendasi untuk kombinasi tertentu dari transport dan MEP WCF diberikan yang membantu membuat aplikasi Anda lebih tangguh terhadap NAT dan firewall di jaringan.
Bagaimana NAT Memengaruhi Komunikasi
NAT dibuat untuk memungkinkan beberapa komputer berbagi satu alamat IP eksternal. NAT pemetaan ulang port memetakan alamat IP dan port internal untuk koneksi ke alamat IP eksternal beserta nomor port baru. Nomor port baru memungkinkan NAT untuk menghubungkan lalu lintas kembali dengan komunikasi asli. Banyak pengguna rumahan sekarang memiliki alamat IP yang hanya dapat dirutekan secara privat dan mengandalkan NAT untuk menyediakan perutean paket global.
NAT tidak menyediakan batas keamanan. Namun, konfigurasi NAT umum mencegah komputer internal ditangani secara langsung. Keduanya melindungi komputer internal dari beberapa koneksi yang tidak diinginkan dan menyulitkan untuk menulis aplikasi server yang harus secara asinkron mengirim data kembali ke klien. NAT menulis ulang alamat dalam paket untuk membuatnya tampak seperti koneksi yang berasal dari mesin NAT. Ini menyebabkan server gagal ketika mencoba membuka koneksi kembali ke klien. Jika server menggunakan alamat klien yang terlihat, itu akan gagal karena alamat klien tidak dapat dirutekan secara publik. Jika server menggunakan alamat NAT, server gagal tersambung karena tidak ada aplikasi yang mendengarkan di komputer tersebut.
Beberapa NAT mendukung konfigurasi aturan penerusan untuk memungkinkan komputer eksternal terhubung ke komputer internal tertentu. Instruksi untuk mengonfigurasi aturan penerusan bervariasi di antara NAT yang berbeda, dan meminta pengguna akhir untuk mengubah konfigurasi NAT mereka tidak disarankan untuk sebagian besar aplikasi. Banyak pengguna akhir tidak dapat atau tidak ingin mengubah konfigurasi NAT mereka untuk aplikasi tertentu.
Bagaimana Firewall Memengaruhi Komunikasi
Firewall adalah perangkat lunak atau perangkat keras yang menerapkan aturan pada lalu lintas yang melewati untuk memutuskan apakah akan mengizinkan atau menolak akses. Anda dapat mengonfigurasi firewall untuk memeriksa aliran lalu lintas masuk dan/atau keluar. Firewall menyediakan batas keamanan untuk jaringan di tepi jaringan atau pada host titik akhir. Pengguna bisnis secara tradisional telah menyimpan server mereka di belakang firewall untuk mencegah serangan berbahaya. Sejak pengenalan firewall pribadi di Windows XP, jumlah pengguna rumah di belakang firewall juga telah sangat meningkat. Ini memungkinkan bahwa salah satu atau kedua ujung koneksi memiliki firewall yang memeriksa paket.
Firewall sangat bervariasi dalam hal kompleksitas dan kemampuannya untuk memeriksa paket. Firewall sederhana menerapkan aturan berdasarkan alamat sumber dan tujuan dan port dalam paket. Firewall cerdas juga dapat memeriksa konten paket untuk membuat keputusan. Firewall ini hadir dalam banyak konfigurasi yang berbeda dan sering digunakan untuk aplikasi khusus.
Konfigurasi umum untuk firewall pengguna rumah adalah melarang koneksi masuk kecuali koneksi keluar dibuat ke komputer tersebut sebelumnya. Konfigurasi umum untuk firewall pengguna bisnis adalah melarang koneksi masuk pada semua port kecuali grup yang diidentifikasi secara khusus. Contohnya adalah firewall yang melarang koneksi pada semua port kecuali port 80 dan 443 untuk menyediakan layanan HTTP dan HTTPS. Firewall terkelola ada untuk pengguna rumah dan bisnis yang mengizinkan pengguna atau proses tepercaya pada komputer untuk mengubah konfigurasi firewall. Firewall terkelola lebih umum untuk pengguna rumah di mana tidak ada kebijakan perusahaan yang mengontrol penggunaan jaringan.
Menggunakan Teredo
Teredo adalah teknologi transisi IPv6 yang memungkinkan mesin-mesin di belakang NAT untuk dapat diakses secara langsung. Teredo bergantung pada penggunaan server yang dapat dirutekan secara publik dan global untuk mengiklankan koneksi potensial. Server Teredo memberi klien aplikasi dan server titik pertemuan umum di mana mereka dapat bertukar informasi koneksi. Komputer kemudian meminta alamat Teredo sementara, dan paket terowongan melalui jaringan yang ada. Dukungan Teredo di WCF memerlukan pengaktifan dukungan IPv6 dan Teredo dalam sistem operasi. Windows XP dan sistem operasi yang lebih baru mendukung Teredo. Windows Vista dan sistem operasi yang lebih baru mendukung IPv6 secara default dan hanya mengharuskan pengguna untuk mengaktifkan Teredo. Windows XP SP2 dan Windows Server 2003 mengharuskan pengguna mengaktifkan IPv6 dan Teredo. Untuk informasi selengkapnya, lihat Gambaran Umum Teredo.
Memilih Pola Pertukaran Transportasi dan Pesan
Memilih transportasi dan MEP adalah proses tiga langkah:
Menganalisis kemampuan alamat komputer titik akhir. Server perusahaan biasanya memiliki kemampuan alamat langsung, sementara pengguna akhir biasanya memiliki kemampuan alamat yang diblokir oleh NAT. Jika kedua titik akhir berada di belakang NAT, seperti dalam skenario peer-to-peer antara pengguna akhir, maka Anda mungkin memerlukan teknologi seperti Teredo untuk memberikan kemampuan alamat.
Analisis protokol dan pembatasan port komputer titik akhir. Server perusahaan biasanya berada di belakang firewall kuat yang memblokir banyak port. Namun, port 80 sering terbuka untuk mengizinkan lalu lintas HTTP, dan port 443 terbuka untuk mengizinkan lalu lintas HTTPS. Pengguna akhir cenderung tidak memiliki batasan port tetapi mungkin berada di belakang firewall yang hanya mengizinkan koneksi keluar. Beberapa firewall mengizinkan manajemen oleh aplikasi di titik akhir untuk membuka koneksi secara selektif.
Hitung transportasi dan MEP yang diizinkan oleh alamatabilitas dan pembatasan port jaringan.
Topologi umum untuk aplikasi klien-server adalah memiliki klien yang berada di belakang NAT, tanpa Teredo, dengan firewall yang hanya mengizinkan lalu lintas keluar, dan server yang dapat diakses langsung yang dilindungi oleh firewall yang kuat. Dalam skenario ini, transportasi TCP dengan MEP dupleks dan transportasi HTTP dengan MEP balasan permintaan berfungsi dengan baik. Topologi umum untuk aplikasi peer-to-peer adalah memiliki kedua titik akhir berada di belakang NAT dan firewall. Dalam skenario ini, dan dalam skenario di mana topologi jaringan tidak diketahui, pertimbangkan rekomendasi berikut:
Jangan gunakan transportasi ganda. Transportasi ganda membuka lebih banyak koneksi, yang mengurangi kemungkinan keberhasilan penyambungan.
Mendukung membangun saluran balik melalui koneksi yang berasal. Menggunakan saluran balik, seperti pada TCP dupleks, membuka lebih sedikit koneksi, yang meningkatkan kemungkinan berhasil terhubung.
Gunakan layanan yang dapat dijangkau untuk mendaftarkan titik akhir atau menyampaikan lalu lintas. Menggunakan layanan koneksi yang dapat dijangkau secara global, seperti server Teredo, sangat meningkatkan kemungkinan untuk berhasil terhubung ketika topologi jaringan membatasi atau tidak diketahui.
Tabel berikut memeriksa Pola Pertukaran Pesan (MEP) satu arah, permintaan-balasan, dan dupleks, serta transportasi TCP standar, TCP dengan Teredo, dan HTTP standar dan ganda di WCF.
Kemampuan pengalamatan | Server Langsung | Server Direct dengan penelusuran NAT | Server NAT | NAT Server dengan NAT traversal |
---|---|---|---|---|
Klien langsung | Setiap transportasi dan MEP | Setiap transportasi dan MEP | Tidak didukung. | Tidak didukung. |
Klien langsung dengan NAT traversal | Setiap transportasi dan MEP. | Setiap transportasi dan MEP. | Tidak didukung. | TCP dengan Teredo dan MEP mana pun. Windows Vista memiliki opsi konfigurasi di seluruh komputer untuk mendukung HTTP dengan Teredo. |
Klien NAT | Setiap transportasi non-dual dan MEP. Duplex MEP memerlukan transportasi TCP. | Setiap transportasi non-dual dan MEP. Duplex MEP memerlukan transportasi TCP. | Tidak didukung. | Tidak didukung. |
NAT klien dengan traversal NAT | Setiap transportasi non-dual dan MEP. Duplex MEP memerlukan transportasi TCP. | Semua kecuali HTTP ganda dan MEP apa pun. Duplex MEP memerlukan transportasi TCP. Transportasi TCP ganda memerlukan Teredo. Windows Vista memiliki opsi konfigurasi di seluruh komputer untuk mendukung HTTP dengan Teredo. | Tidak didukung. | TCP dengan Teredo dan MEP mana pun. Windows Vista memiliki opsi konfigurasi di seluruh komputer untuk mendukung HTTP dengan Teredo. |
Pembatasan firewall | Server terbuka | Server dengan firewall terkelola | Server dengan firewall khusus HTTP | Server dengan firewall khusus keluar |
---|---|---|---|---|
Klien Terbuka | Setiap transportasi dan MEP. | Setiap transportasi dan MEP. | Setiap transport HTTP dan pola pertukaran pesan (MEP). | Tidak didukung. |
Klien dengan firewall terkelola | Setiap transportasi non-dual dan MEP. Duplex MEP memerlukan transportasi TCP. | Setiap transportasi non-dual dan MEP. Duplex MEP memerlukan transportasi TCP. | Setiap transport HTTP dan pola pertukaran pesan (MEP). | Tidak didukung. |
Klien dengan firewall khusus HTTP | Setiap transport HTTP dan pola pertukaran pesan (MEP). | Setiap transport HTTP dan pola pertukaran pesan (MEP). | Setiap transport HTTP dan pola pertukaran pesan (MEP). | Tidak didukung. |
Klien dengan firewall yang hanya memungkinkan koneksi keluar | Setiap transportasi non-dual dan MEP. Duplex MEP memerlukan transportasi TCP. | Setiap transportasi non-dual dan MEP. Duplex MEP memerlukan transportasi TCP. | Setiap transportasi HTTP dan MEP non-dupleks. | Tidak didukung. |