Bagaimana saya (dekat) secara bersamaan menggunakan 2 sistem / server DNS yang berbeda?


4

Saya sering harus mengganti IP apa yang diputuskan nama untuk melakukan tugas-tugas tertentu ketika membangun atau lebih khusus memindahkan situs web / aplikasi web, ke platform / server baru. Banyak kali saya harus bolak-balik dengan cepat, yang berarti mengedit dll / host dan banyak menyegarkan, yang menjengkelkan.

Apakah ada program / plugin / ekstensi browser (lebih disukai untuk Chrome atau FF) yang memungkinkan saya untuk dengan cepat mengubah IP bolak-balik, atau memungkinkan browser memilih sendiri server DNS atau file host yang independen dari sistem (jadi saya hanya bisa menggunakan satu browser menggunakan pengaturan sistem dan lainnya menggunakan pengaturannya sendiri, mis. Chrome menyelesaikan example.com menjadi 1.1.1.1 sementara FF menyelesaikan example.com menjadi 1.2.2.2)?

Saya mengembangkan pada Mac, sehingga Anda dapat memberikan ekstensi PC sebagai bagian dari jawaban Anda, tetapi pastikan Anda memiliki setidaknya satu solusi yang berfungsi pada Mac.

Jawaban:


2

Addon Firefox

  1. SwitchHost (situs Addon Mozilla / Firefox) .

    Berdasarkan uraian di bawah ini, ia meminta OP 100% (beralih / menggunakan file host)

    SwitchHosts memungkinkan Anda mengelola dan beralih di antara banyak file host dengan cepat dan mudah ...

  2. HostAdmin

  3. TamperData

(1) dan (2) arsip hasil dengan memodifikasi file host yang AKAN mempengaruhi program lain.

(3) mungkin lebih untuk kebutuhan Anda jika Anda tidak ingin mempengaruhi program lain. Ini juga memiliki keuntungan karena tidak perlu mengubah izin menulis /etc/hostsfile, yang dapat bermasalah (atau bahkan tidak berpengaruh) di OS X.


Apakah Anda tahu jika masih berfungsi pada versi Firefox dan OS terbaru? Komentar di halaman plugin membuat saya khawatir.
Thilo

TemperHeader ditambahkan.
John Siu

1

Anda dapat menjalankan server proxy dan membuat satu browser menggunakannya dan lainnya menjalankan langsung. Saya tidak yakin apa proxy terbaik akan menjadi yang terbaik untuk ini - jika itu pada mesin / VM terpisah maka semuanya akan baik-baik saja karena Anda dapat mengkonfigurasi DNS mesin. Yoy mungkin dapat memberitahu Apache atau squid untuk menggunakan DNS kustom atau menulis ulang aturan, atau Anda dapat menulis proxy Anda sendiri untuk melakukan ini dalam <100 baris python ...


+1, ini adalah bagaimana kami memecahkan masalah ini di lapangan. Anda kemudian dapat menggunakan plugin browser untuk dengan cepat mengganti proxy.
hellomynameisjoel

1

Salah satu opsi adalah mengatur server DNS Anda sendiri dan menerapkan perubahan dengan pembaruan DNS dinamis . Anda kemungkinan masih harus menghapus cache DNS browser karena pinning DNS . Jika Anda menggunakan proksi, DNS adalah tanggung jawab proksi (kecuali masalah pra pengambilan DNS di Chrome), jadi proksi adalah solusi terbersih.

Ada dua proxy HTTP yang dapat melakukan ini:

Fiddler bebas, Charles tidak, meskipun ia memiliki uji coba terbatas waktu bebas.

Di Chrome Anda dapat dengan mudah memeriksa dan menghapus cache DNS: chrome://net-internals/#dns Saya tidak percaya ada cara bagi ekstensi untuk mengesampingkan DNS (meskipun itu dapat membuat pencarian DNS).

Dengan plugin browser pengalih proxy Anda dapat berganti situs dengan mengaktifkan atau mengalihkan proxy.

Untuk kelengkapan, ada dua kemungkinan masalah dengan pendekatan ini: cookie dan caching . Negara atau cookie auth pada satu server mungkin tidak berfungsi pada yang lain. Konten baru di situs pengujian Anda mungkin tidak muncul karena belum kedaluwarsa, ini tergantung pada pengaturan caching di server dan konten. Pembilasan cache browser dan cookie harus melakukan trik jika ini terjadi.

Anda juga dapat memiliki masalah yang berlawanan dari konten yang tidak di -cache seperti yang diharapkan karena server web memiliki Etagheader berbeda untuk konten statis yang sama. Ini biasanya tidak menyebabkan masalah besar, meskipun bisa ditandai dalam laporan kinerja.

Karena pendekatan pengalihan DNS manual Anda saat ini juga berpotensi mengalami hal-hal di atas, mereka mungkin tidak menjadi masalah bagi Anda, atau Anda sudah menyadarinya ;-)

(Bila mungkin saya lebih suka menggunakan pendekatan alternatif untuk seluruh masalah yang biasanya lebih bersih: tambahkan alias host virtual dari "dev-www" "prod-www" "test-www" dll, meskipun itu terkadang memiliki komplikasinya sendiri. )


1

Bagaimana kalau hanya menggunakan skrip shell atau Applescript untuk menukar file host sistem?

Versi shell yang belum diuji:

mv /private/etc/hosts /private/etc/hosts.tmp
mv /private/etc/hosts.alt /private/etc/hosts
mv /private/etc/hosts.tmp /private/etc/hosts.alt
dscacheutil -flushcache

mempengaruhi browser / program lain. juga tidak selalu menyegarkan cache DNS di dalam browser
Thilo

0

Di FireFox, Anda bisa menggunakan add-on Redirector yang memungkinkan seseorang menentukan pola untuk halaman yang harus secara otomatis dialihkan ke halaman lain. Misalnya dialihkan http://example.com/foo.htmlke ke http://example.com/bar.html.

Ekstensi ini mendukung wildcard dan ekspresi reguler dalam pola. Ekspresi reguler mendukung pengambilan tanda kurung, sehingga Anda dapat mengarahkan ulang http://example.com/(.*)ke http://1.1.1.1/$1.

Untuk menonaktifkan Redirector sementara, klik pada Rbilah status atau tekan Alt+ R. Mengklik kanan ikon membuka jendela opsi Redirector.

(Penafian: Saya tidak pernah menggunakan pengaya ini sendiri.)


Itu tentu saja hanya berfungsi jika mengetikkan alamat IP akan berhasil di tempat pertama, yaitu tidak jika situs web tergantung pada nama host yang hadir dalam permintaan.
Thilo
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.