Yeniden başlatmadan varsayılan Mac OSX yönlendirme tablosu nasıl yeniden yüklenir


71

Selamlar,

vpncBir VPN istemcisi için kullanıyorum . Ayrıca routeyerel ağa, vb.'ye hala erişebildiğimden emin olmak için bazı zor şeyler yapıyorum (buradaki bilgiler çok önemli değil).

Bazen yönlendirme tablosunu o kadar ping: sendto: Network is unreachablecanlandırıyorum ki, aksi takdirde çözülmesi gereken URL'ler için alıyorum .

Şu anda Mac OS X’i yeniden başlatırsam her şey normale döner. Ne yapmak istiyorum (Bu açılışta olarak ayarlanır örneğin neyi) "varsayılan" için yönlendirme tablolarını sıfırlanacağını olmadan bir bütün sistem yeniden başlatma.

Bence bu adım 1'dir route flush(tüm rotaları kaldırmak için). Ve 2. adımda, tüm varsayılan yolların yeniden yüklenmesi gerekir.

Bunun nasıl yapılacağı hakkında bir fikriniz var mı? (örneğin, adım 2 nedir?)

EDIT Ayrıca, başka bir semptomun söz traceroutekonusu adreste de başarısız olduğunu fark ediyorum . Örneğin:

traceroute the.good.dns.name

traceroute: bind: Can't assign requested address

Yanıtlar:


64

Yolları yıkaman gerekiyor. Kullan temizlemek -n rotayı birkaç kez. Daha sonra rota ekleme ile rotalarınızı ekleyin.


1
Bunu kabul edilen cevap olarak değiştirdim. İşe yarıyor! route -n flushBirkaç kez yaptım , sonra ağımı Sistem tercihleri ​​üzerinden yeniden başlattım. Sadece geri dönüp bunu çözmem bir yıl sürdü :)
Nate Murray

Bu benim için, özellikle kablosuz ağlar arasında geçiş yaparken özellikle "İstenilen adres alamıyorum" hatalarıyla karşılaştığım Sonicwall'un Aventail Connect VPN istemcisi ile benzer bir sorunu çözdü. Şimdi bunu çözmek için bir güç döngüsünden kaçınmayan bir yol var. Teşekkürler!
Alan Donnelly

Vaov! Ayrıca BarracudaVPN ile ilgili sorunuma da yardımcı oldu… Wi-Fi'yi kapatıp açıyorum ve sonunda tekrar bağlanabiliyorum! Çok teşekkürler!
hans_meine

19

Bir ev OpenVPN sunucusu kullanırken ve Mac'teki Tunnelblick uygulamasını kullanarak bağlanırken bu sorunla karşılaşıyordum.

Sonunda olan, hedef IP olarak ev IP'm olan bir yolun ve yanlış bir ağ geçidinin VPN bağlantısı kesildikten sonra artık kaldığı yönünde. Bu rotayı silmek sorunu çözdü.

$ sudo route -n delete the.good.dns.name

Örnek: Okuldayım ve yeni bir bilgisayar açılışından sonra kablosuz bir ağa bağlanıyorum. Evim OpenVPN sunucusuna Tunnelblick ile bağlanıyorum.

$ netstat -nr
Destination                   Gateway
....
[home-ip]/32                  [school-default-gateway-1] ....
....

VPN sunucusundan ayrılıyorum. Kablosuz ağları değiştiriyorum. Bu benim varsayılan ağ geçidimi değiştiriyor.

$ netstat -nr
Destination                   Gateway
...
[home-ip]/32                  [school-default-gateway-1] ...
...
$ ping [home-ip]
PING [home-ip]: 56 data bytes
ping: sendto: Network is unreachable
ping: sendto: Network is unreachable
Request timeout for icmp_seq 0
...

Bundan sonra hiçbir koşulda ev ağıma (VPN, ping, herhangi bir şey) bağlanamıyorum. Eğer o zaman sadece rotayı silersem:

$ sudo route -n delete [home-ip]
delete net [home-ip]
$ ping [home-ip]
PING [home-ip]: 56 data bytes
64 bytes from [home-ip]: icmp_seq=1 ttl=56 time=13.111 ms

İyi çalışıyor.

OpenVPN sunucusunun / istemcisinin bundan ayrılan (ve bunun ne olduğunu bulmakla ilgilenen) nasıl yapılandırıldığına ilişkin bir sorun olabilir, ancak bu rota silme işlemini otomatikleştiren bir Tunnelblick bağlantı kesme komut dosyasını yükledim.


Burada da benzer bir sorun yaşıyorum. Gerçekten sinir bozucu.
Tom Busby

Örnek ovpn betiği ile bile aynı sorunla karşılaşıyorum. Bulduğum tek çözüm, bağlantıyı kesme sonrası komut dosyasında rotayı
silmede

Bu betiği her bağlantı kesilmesinde otomatik olarak çalıştırmanın bir yolu var mı?
Whitecat

@Whitecat Evet!
Elad Nava

13

İlk önce ağ arayüzünüz için bir rotaya ihtiyacınız vardır. VPN bağlantısı kesilirse, ağ arayüzünüzü aşağı indirin ve ardından ifconfig ile tekrar açın. Ardından, varsayılan gw'nizi oluşturmak için rota komutunu kullanın. Yani şöyle bir şey:

ifconfig en0 down

ifconfig en0 up

route add <ip address> default


1
Evet, ancak Mac OS X, varsayılan rotanın ip adresinin ne olduğunu nasıl biliyor? Gerçekten görmek istediğim şey Mac OS X'in önyükleme işlemini nasıl yaptığı ve aynı şeyi yaptığı.
Nate Murray


5

@Sean ile aynı konuya giriyordum (aynı zamanda OS X kullanıyorum), ev ve iş ağları arasında geçiş yaptığımda varsayılan yol silinmiyordu.

Tamamlanmak için, evde VPN'ime bağlandığımda ve aşağıdaki komutu çalıştırdığımda, varsayılan ağ geçidini aşağıdaki gibi gösterecekti

$ netstat -nr
Destination                   Gateway
...
[home-ip]/32                  [work-default-gateway-1]

Ve bağlantım kesildiğinde, [home-ip] ağ geçidi hala orada olacaktı. İş ağıma bağlandığımda internete hiç bağlanamadım ve OP ile aynı konuyla karşılaştım

$ traceroute the.good.dns.name    
$ traceroute: bind: Can't assign requested address

Daha sonra rotayı elle silmek zorunda kalacağım

$ sudo route -n delete [home-ip]

Başlangıçta "route -n delete" post-disconnect.shkomut dosyasını koydum , ancak bu biraz dağınıktı, bu yüzden bu bağlantıyı buldum

https://code.google.com/p/tunnelblick/issues/detail?id=177

Anlaşılan sebebi benim de aşağıdaki ayarı etmektir .ovpndosyası

user nobody
group nogroup

Bu, yolun kök olarak ayarlandığı anlamına gelir, ancak bağlantı kesildiğinde kullanıcı artık kök değildir, bu nedenle yol silinemez.

Bu 2 satırı dosyama yorumlamak .ovpn, kullanmak zorunda kalmadan sorunu düzeltti post-disconnect.sh.


Teşekkürler, bu benim için de işe yaradı. Google kod bağlantısının artık işe yaramaması ne yazık ki.
Toby,

Önerinizi kullanmayı denedim, sorun şu ki, VPN'e bağlandığımda config dosyalarını bir yerden çekiyor ve değişikliklerimin üzerine yazıyor. Onları sunucudan alamadım, söyleyebildiğim kadarıyla çünkü bu dosyaları değiştirdiğimde sorunu çözmüyor. Değişikliklerimin yapışması için bu dosyaları bulabileceğim ve onları yok edebileceğim / değiştirebileceğim bir müşteri tarafı var mı?
Finlandiya Fiyatı

~ / Library'yi / Library ile karıştırmanın önemsiz hatasını yapıyordum. Hata! Bunu okuyan herkes için dosyayı ~ / Library / Application Support / Tunnelblick / Configurations / <vpnname> .tblk / İçindekiler / Kaynaklar
Yüzde Fiyatı
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.