Varsayılan ağ geçidini nasıl değiştirebilirim?


19

Şu anda bir FreeBSD 9.1 çalıştırıyorum ve varsayılan ağ geçidi zaten yapılandırılmış rc.conf.

rc.conf:

defaultrouter = "10.0.0.1"

Ama şimdi sistemi yeniden başlatmadan varsayılan ağ geçidini değiştirmek istiyorum, bu mümkün mü?

Yanıtlar:


21
route del default
route add default 1.2.3.4

1.2.3.4Yeni ağ geçidi nerede . Bunları aynı satırda bir;

Düzenleme: Bu FreeBSD, Linux değil . Komut farklı. Soruyu, kullanılan işletim sistemini belirleyecek kadar dikkatle okumadıysanız, lütfen bu Cevabı düzenlemeyin.


4
Not: bunu konsolda yapın, ssh üzerinde değil. Bunu ssh (veya başka bir ağ yöntemi) ile yapmanız gerekiyorsa, her iki komutu da aynı anda ;veya ile birlikte verin&&
Dalibor Filus

4
Veya, genel güvenli yöntemi kullanın: 1) Bir kabukta oturum açın, iptal edilmedikçe 15 dakika içinde kapatma / yeniden başlatma 2) Güvenli olmayan şeyler yapın. 3) Kapatma / yeniden başlatmayı iptal edin.
Hennes

2
Linux'ta komutlar ip route del defaultve ip route add default via 1.2.3.4çalışma. Bu yüzden komut, biraz benzerlik gösterdiği için Linux kullanıcıları için de hala geçerli.
Paul Stelian

16

ipVeya routekomutunu kullanarak yeni bir varsayılan yol ekleyebilir ve eskisini kaldırabilirsiniz . Aşağıdaki komutlar ağ geçidini 192.0.2.1 ile değiştirecektir. Her iki komut çifti de aynı şeyi yapar. FreeBSD ve diğer işletim sistemleri, muhtemelen biraz farklı formatlarda bir veya her iki programa sahip olmalıdır. (FreeBSD'nin routekomutu vardır ve gwdiğer uygulamalarda kullanılan anahtar kelimeyi hariç tutar .) Komutlar man ipve / veya man routesize özel uygulamanızla ilgili belgeler sağlamalıdır.

route add default 192.0.2.1
route del default 10.0.0.1

ip route add default via 192.0.2.1
ip route del default via 10.0.0.1 

Bu komutların birden çok uygulaması vardır, bu nedenle yukarıdakiler uygulamanızla eşleşmeyebilir. Uygulamanızda, manvarsayılan ağ geçitleri ekleme ve kaldırma gibi yaygın kullanım örnekleri için bir sayfa olmalıdır . Deneyin man routeve man ipsizin uygulama nasıl çalıştığını görmek.

192.0.2.1'i istediğiniz varsayılan ağ geçidine değiştirin. Varsayılan ağ geçidinin doğrudan bağlantınız olan ağlardan birinde olması gerekir. IP adresinizi de benzer şekilde değiştirebilirsiniz. ipIPv4 ve IPv6 ağlarında IP adreslerini ve yönlendirmeyi görüntülemek ve yönetmek için yapmanız gereken her şeyi yapacak daha yeni bir araçtır. ifconfigIPv4 ağındaki IP adreslerini yapılandırmak için daha eski bir araçtır.

Değişikliği kalıcı hale getirmek için ağ yapılandırma dosyalarınızı güncelleyin /etc. Dosyalar kullandığınız dağıtıma bağlı olarak değişir.

Bu komutlardan en az biri, herhangi bir Unix türevli O / S'de bulunmalıdır. Farklı sürümler biraz farklı çalışabilir. İşletim sisteminizle manilgili ayrıntılar için sayfayı kontrol edin .


4
-1 Maalesef bunlar Linux komutlarıdır ve FreeBSD üzerinde çalışmaz .
Chris S

2
@ChrisS, FreeBSD için yapılan değişikliklere başvuracak şekilde güncellendi. routeküçük sözdizimi değişiklikleriyle birden çok uygulamaya sahiptir.
BillThor

1
"ip yolu" komutlarına oy verin.
Sérgio

9

İşte bir astar:

ip route replace default via 1.2.3.4

1.2.3.4Yeni ağ geçidi IP'si nerede

kredi


2
-1 Maalesef bunlar Linux komutlarıdır ve FreeBSD üzerinde çalışmaz .
Chris S

3

evet sadece rotayı değiştirin ve ağınızı yeniden başlatın.

/etc/rc.d/netif restart

2
Bu çok işe yarıyor olsa da çok işe yarıyor ... ve arayüzlere bağlı uygulamaları kırabilir.
Chris S

1

Deneyebilirsiniz:

route add default gw 192.168.1.254 eth0

-1 Maalesef bunlar Linux komutlarıdır ve FreeBSD üzerinde çalışmaz .
Chris S

Route addbenim FreeBSD 8.4 kurulumunun bir parçası. Ama evet, yanlış işletim sistemine cevap veren birçok insan var.
Hennes

1
@Hennes route addparçası iyi çalışıyor. GNU / Linux gwbaşka hiçbir * nix üzerinde çalışmayan parçayı ekledi . gwTüm BSD'ler, Solaris, OSX, HPUX, AIX, vb. Üzerinde çalışmalar yapılmadan
Chris S

1

Çok kolay, sadece sonraki komutları yazmanız gerekiyor:

$ route del 0/0
$ route add 0/0 192.168.0.1

'192.168.0.1' i seçtiğiniz IP ile değiştirmeniz gerekecektir.

Ve değişiklikleri kontrol etmek için 'netstat' kullanabilirsiniz:

$ netstat -r

Bu komut, sistemin yönlendirme tablosunu gösterir.


"0/0" nedir?
WWW

1
@WWW '0/0', 'varsayılan' ile aynı olan '0.0.0.0/0' ağ bloğunun kısaltmasıdır, ancak '0/0' i tercih ediyorum (sanırım eski okuldan daha fazlayım ).
ifm

0

Her zaman ilk kullanımı netstat -nrne varsa ağ geçidini ve ne ... See etti ayrıntıları kontrol etmek 0.0.0.0. Bu varsayılan bir zaman ve ilk neden bu komutu kullanmak daha bu ağ geçidi değiştiriyorum düşünüyorum:

route add default gw your ip eth0

-1 Maalesef bunlar Linux komutlarıdır ve FreeBSD üzerinde çalışmaz .
Chris S
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.