[求助]想写一个切换ip配置的shell

sh/bash/dash/ksh/zsh等Shell脚本
回复
头像
buffalo319
帖子: 29
注册时间: 2006-05-12 20:32
送出感谢: 0
接收感谢: 0

[求助]想写一个切换ip配置的shell

#1

帖子 buffalo319 » 2007-04-04 19:13

我所在的是教育网,所以不能上外网,上外网的时候要永ADSL,同时重新配置IP.
每次切换到图像界面配置IP太麻烦,所以想写个shell脚本来自动切换配置.
每次摇设置的有IP、DNS、网关和子网掩码。

我是新手,就知道配置IP用
sudo ifconfig eth0 192.168.0.8 netmask 255.255.255.0 up

但是不知道配置DNS和网关的命令

请大家给指引一下
头像
laborer
帖子: 1016
注册时间: 2005-10-25 11:15
送出感谢: 0
接收感谢: 1 次
联系:

#2

帖子 laborer » 2007-04-04 22:01

dns修改/etc/resolv.conf,路由用route
头像
eexpress
帖子: 58428
注册时间: 2005-08-14 21:55
来自: 长沙
送出感谢: 4 次
接收感谢: 256 次

#3

帖子 eexpress » 2007-04-04 22:08

不切实际。好多需要root权限。
有nm-applet啊。看看吧
● 鸣学
头像
buffalo319
帖子: 29
注册时间: 2006-05-12 20:32
送出感谢: 0
接收感谢: 0

#4

帖子 buffalo319 » 2007-04-04 23:08

那修改DNS和网关的命令有码?
头像
东方不坏
帖子: 843
注册时间: 2007-04-05 3:09
系统: Deepin
来自: 身后某处
送出感谢: 2 次
接收感谢: 0
联系:

#5

帖子 东方不坏 » 2007-04-05 4:07

我已經說過非常多次了 本人覺得吧 還是把自家的貓兒開路由好 這樣就可以方便地在貓兒上設置各種參數了
[color=#FFFF00]东方不败[/color] 写了:
  • OS:Ubuntu14.10
  • CPU:Athlon II 651K
  • RAM:威刚DDR3 1600 4GX2双通道
  • 主板:GA-A75M-DS2
  • 硬盘:西数64M版 2T
  • 显卡:迅景6790
  • 显示器:LG W2242TP
kangkang
帖子: 86
注册时间: 2006-11-28 22:29
送出感谢: 0
接收感谢: 0

#6

帖子 kangkang » 2007-04-05 14:03

DNS一般说来不用重新设置,不用私有的就成。

代码: 全选

#!/bin/bash
case $1 in 
cernet|0)
sudo ifconfig eth0 down
sudo ifconfig eth0 IPADDR
sudo route add default GATEWAY
;;
adsl|1)
sudo ifconfig eth0 down
sudo ifconfig eth0 IPADDR
sudo route add default GATEWAY
;;
esac
自己看着改改吧
dpmcl
帖子: 46
注册时间: 2006-01-12 8:15
送出感谢: 0
接收感谢: 0

#7

帖子 dpmcl » 2007-04-05 17:28

[系统]-[系统管理]-[联网] 工具有这个功能,把你的不同配置保存成配置文件,改变配置文件就可以切换配置了。
头像
lanbonet
帖子: 1
注册时间: 2008-06-26 0:43
送出感谢: 0
接收感谢: 0

#8

帖子 lanbonet » 2008-06-26 0:55

看到有用的了.回下.
头像
hubert_star
论坛版主
帖子: 5372
注册时间: 2007-10-29 22:12
系统: OSX 10.9 + Ub 1304
来自: 江苏南京
送出感谢: 0
接收感谢: 5 次

#9

帖子 hubert_star » 2008-06-26 3:11

参考arch上面用的netcfg2,非常好用,最适合快速切换环境了
佛经说,人有八苦: 生、老、病、死、求不得、怨憎、爱别离、五阴盛 故我苦!
圣经说,人有七罪: 饕餮、贪婪、懒惰、淫欲、傲慢、嫉妒和暴怒  故我有罪!

我这篇帖子里面没有任何攻击我们伟大的中华人民共和国政府和任劳任怨的人民公仆(和本论坛高素质的版主)的文字和含义;

特此声明!

有些事,我们明知道是错的,也要去坚持,因为不甘心;有些人,我们明知道是爱的,也要去放弃,因为没结局;有时候,我们明知道没路了,却还在前行,因为习惯了。

欢迎来我的新浪微博@me
头像
qqttdh
帖子: 896
注册时间: 2007-07-20 22:15
送出感谢: 0
接收感谢: 0

#10

帖子 qqttdh » 2008-07-01 21:17

代码: 全选

网络(ifconfig, route, mii-tool, nslookup 命令皆已过时)
• 	ip link show 	显示interface列表
  	ethtool interface 	显示interface状态
  	ip link set dev eth0 name wan 	重命名eth0为wan
  	ip addr add 1.2.3.4/24 brd + dev eth0 	添加ip和掩码(255.255.255.0)
  	ip link set dev interface up 	启动interface(或关闭)
  	ip route add default via 1.2.3.254 	设置默认网关1.2.3.254
• 	tc qdisc add dev lo root handle 1:0 netem delay 20msec 	
                                                             增加20ms传输时间到loopback设备(调试用)
• 	tc qdisc del dev lo root 	移除上面添加的传输时间
• 	host pixelbeat.org 	查找给定名字的ip地址,反之亦然
• 	hostname -i 	查找本地ip地址(相当于host `hostname`)
• 	netstat -tupl 	列出系统中的internet服务
• 	netstat -tup 	列出活跃的连接
用得上的都在这。。慢慢研究。。 :lol:
thomsi
帖子: 67
注册时间: 2007-08-17 14:04
送出感谢: 0
接收感谢: 0
联系:

Re: [求助]想写一个切换ip配置的shell

#11

帖子 thomsi » 2008-10-22 21:50

我为了使用虚拟机,切换网络环境,弄了个简单脚本,作用为替换/etc/network/interfaces配置文件。代码很烂,能用就好,

代码: 全选

#!/bin/bash
#替换配置文件并应用新配置
[ `whoami` == "root" ] || cmd="gksudo" ##不是root 就cmd=gksudo
count=0
$cmd "cp /etc/network/interfaces.vbox /etc/network/interfaces"
$cmd "/etc/init.d/networking restart"

代码: 全选

#!/bin/bash
#替换配置文件、删除虚拟桥接网络并应用新配置
[ `whoami` == "root" ] || cmd="gksudo " ##不是root 就cmd=gksudo
count=0
$cmd "cp /etc/network/interfaces.vboxdown /etc/network/interfaces"
#将网卡tap0, eth0 移出bridge(br0)
$cmd "brctl delif br0 tap0"
$cmd "brctl delif br0 eth0"
#停用网卡tap0,bridge(br0)
$cmd "ifconfig tap0 down"
$cmd "ifconfig br0 down"
#刪除虚拟网卡tap0
$cmd "tunctl -d tap0"
#刪除虚拟网桥br0
$cmd "brctl delbr br0"
#应用配置
$cmd "/etc/init.d/networking restart"
回复

回到 “Shell脚本”