Bagaimana cara "me-restart" antarmuka jaringan tertentu di RHEL?

18

Di RHEL, alih-alih menggunakan service network restartperintah, bagaimana saya bisa memulai ulang antarmuka jaringan tertentu, katakanlah "eth1", dengan hanya satu perintah.

"Hanya satu perintah" karena itu adalah satu-satunya antarmuka di mana saya sshbekerja juga. Jadi jika saya akan menggunakan: ifdowndan kemudian ifup, saya tidak akan pernah bisa menekan ifupperintah karena saya sshtelah dihentikan setelah ifdown eth1perintah.

Jadi harus ada satu perintah yang memungkinkan saya untuk menurunkan dan kemudian menampilkan antarmuka yang melayani sshkoneksi saya saat ini . Jadi saya tidak perlu khawatir koneksi benar-benar hilang ke server saya.

Ada ide?

夏 期 劇場
sumber

Jawaban:

27

Kamu bisa memakai:

ifdown eth1 && ifup eth1

Sebagai satu perintah. && hanya menjalankan satu perintah, lalu yang lain jika perintah pertama berhasil . Jika Anda harus menggunakan sudo, pastikan Anda menggunakannya sebelum setiap perintah:

sudo ifdown eth1 && sudo ifup eth1

Selama antarmuka Anda dikonfigurasi untuk memiliki IP yang diperlukan dan rute yang cocok dengan konfigurasi saat ini, koneksi ssh Anda tidak akan turun.

Jika Anda khawatir menggunakannya di server produksi yang tidak memiliki metode akses lain, itu bisa dimengerti. Meskipun perintah itu melakukan apa yang Anda inginkan, sangat mudah untuk memiliki kesalahan konfigurasi yang hanya diketahui setelah menjalankan perintah ini. Jika Anda tidak memiliki metode akses alternatif (misalnya, konsol out-of-band, atau SSHD yang berjalan pada antarmuka lain), paling aman untuk tidak melakukan ini .

Saya sering menggunakan teknik ini untuk melakukan 'restart' antarmuka, tetapi saya umumnya memiliki metode cadangan akses yang tersedia untuk berjaga-jaga ketika saya melakukannya.

blahnana
sumber
ini ditambah manajemen OOB FTW
dmourati
3
Mungkin saya sarankan ifdown eth1 && ifup eth1, ifup cara ini tidak berjalan kecuali ifdown berhasil, sedangkan dengan ;ifup akan berjalan terlepas dari bagaimana ifdown kembali.
zamnuts
@zamnuts Jawaban sekarang diedit untuk menyertakan ini :)
David Gardner
1

Anda dapat 'memulai kembali' satu antarmuka dengan mengeluarkan perintah berikut:

# ifdown eth1
# ifup eth1

Setelah itu, Anda dapat memverifikasi bahwa konfigurasi baru Anda aktif

# ip a
jerQ
sumber
Maaf tetapi saya perlu .. "Hanya satu perintah" karena itu adalah satu-satunya antarmuka di mana ssh saya bekerja juga. Jadi jika saya akan menggunakan: ifdown dan kemudian ifup, saya tidak akan pernah bisa menekan perintah ifup karena ssh saya telah dihentikan sekali setelah perintah ifdown eth1. Jadi harus ada satu perintah yang bisa saya bawa ke bawah dan kemudian memunculkan antarmuka yang melayani koneksi ssh saya saat ini. Jadi saya tidak perlu khawatir koneksi hilang ke server saya.
夏 期 劇場
Anda bisa membuatnya menjadi skrip shell dan menjalankannya, sesi ssh Anda seharusnya tidak dihentikan, meskipun akan ada pemadaman jaringan singkat. Pilihan lain adalah menjalankan skrip itu di dalam sesi layar, di mana skrip akan dieksekusi sampai akhir, bahkan jika sesi ssh Anda akan gagal.
jerQ
1
akankah ini membantu? ifdown eth1 ; ifup eth1?
夏 期 劇場
0

Apakah Anda mencoba mengubah alamat IP (atau parameter antarmuka apa pun) dari antarmuka pada mesin jarak jauh? Jika jawabannya ya, maka Anda dapat mencoba salah satu dari yang berikut:

Metode keren adalah dengan menggunakan utilitas layar untuk membuat sesi hanya dengan mengetikkan 'layar'. Setelah Anda me-restart layanan jaringan dan koneksi SSH Anda turun, gunakan layar -l untuk memeriksa bahwa sesi masih aktif (tetapi terlepas) dan layar -r untuk melanjutkan kembali sesi yang terlepas. Ini akan berfungsi jika tidak ada kesalahan dalam file konfigurasi antarmuka Anda, yaitu layanan jaringan restart berhasil.

Anda juga dapat menggunakan trik berikut:

$ cp -v current_conf_file current_conf_file.bak
$ echo "mv current_conf_file.bak current_conf_file && service network restart" | at now+10min

Dan lanjutkan dengan mengedit file konfigurasi antarmuka Anda dan memulai kembali layanan jaringan. Jika terjadi kesalahan, Anda hanya perlu menunggu 10 menit, agar konfigurasi sebelumnya diterapkan kembali dan layanan jaringan harus dimulai kembali.

IG83
sumber
-3

semua jawaban berbicara tentang ifup & ifdown tidak sesuai dengan pertanyaan. ifup & ifdown hanya membawa antarmuka ke atas dan ke bawah saja, itu tidak mempengaruhi layanan jaringan. untuk layanan jaringan linux tidak berarti antarmuka pengaturan ip saja.

silakan periksa /etc/rc.d/network script untuk lebih jelasnya.

Steven Liang
sumber
1
Saya tidak yakin poin apa yang Anda sampaikan. OP tidak bertanya tentang memulai kembali layanan jaringan , tetapi hanya memulai ulang antarmuka individual . Selain itu, OP telah menerima jawaban yang secara eksplisit menggunakan perintah yang Anda rekomendasikan. -1 dari saya.
MadHatter mendukung Monica