分页: 1 / 1

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

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

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

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

请大家给指引一下

发表于 : 2007-04-04 22:01
laborer
dns修改/etc/resolv.conf,路由用route

发表于 : 2007-04-04 22:08
eexpress
不切实际。好多需要root权限。
有nm-applet啊。看看吧

发表于 : 2007-04-04 23:08
buffalo319
那修改DNS和网关的命令有码?

发表于 : 2007-04-05 4:07
东方不坏
我已經說過非常多次了 本人覺得吧 還是把自家的貓兒開路由好 這樣就可以方便地在貓兒上設置各種參數了

发表于 : 2007-04-05 14:03
kangkang
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
自己看着改改吧

发表于 : 2007-04-05 17:28
dpmcl
[系统]-[系统管理]-[联网] 工具有这个功能,把你的不同配置保存成配置文件,改变配置文件就可以切换配置了。

发表于 : 2008-06-26 0:55
lanbonet
看到有用的了.回下.

发表于 : 2008-06-26 3:11
hubert_star
参考arch上面用的netcfg2,非常好用,最适合快速切换环境了

发表于 : 2008-07-01 21:17
qqttdh

代码: 全选

网络(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:

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

发表于 : 2008-10-22 21:50
thomsi
我为了使用虚拟机,切换网络环境,弄了个简单脚本,作用为替换/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"