This is a discussion on I ment multiple IP addresses assigne to one interface when I said alias within the Slackware Linux Support forums, part of the Unix Operating Systems category; --> When i say aliass I mean multiple IP addresses for one interface. For example on eth0 I want to ...
| |||||||
| FAQ | Members List | Calendar | Search | Today's Posts | Mark Forums Read |
| ||||
| When i say aliass I mean multiple IP addresses for one interface. For example on eth0 I want to have multiple addresses for example eth0:0 192.168.1.1 eht0:1 192.168.1.2 etc. The rcinet1.conf file has no examples of this type of config in its comments. Thanks Jeff Turley |
| |||
| -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 On Wed, Jan 07, 2004 at 06:18:06PM PST, Jeff Turley wrote in article <y53Lb.22120$P%1.21346301@newssvr28.news.prodigy.c om>: > When i say aliass I mean multiple IP addresses for one interface. For > example on eth0 I want to have multiple addresses for example eth0:0 > 192.168.1.1 eht0:1 192.168.1.2 etc. The rcinet1.conf file has no examples > of this type of config in its comments. Thanks Jeff Turley i'd just put them in rc.local edit rc.local, and add the needed ifconfig commands to it. ofcourse, you can add them to one of the other scripts also Jurgen. -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.2.2 (GNU/Linux) iD8DBQE//NtJ1ucXIiwNwbURAk0eAKDsroR3WBQDDxg7MXAJFQxMX39tEwC gt+NI GEdcrs/igRCOsPEyHsB0bvY= =IOGY -----END PGP SIGNATURE----- |
| |||
| In alt.os.linux.slackware, Jurgen Philippaerts dared to utter, > i'd just put them in rc.local > edit rc.local, and add the needed ifconfig commands to it. That's the quick and dirty way. It'll work, but it's kinda ugly. > ofcourse, you can add them to one of the other scripts also This is the elegant way of course, but will require a little more work and possibly a lot more knowledge. The place I'd look to do things would be rc.inet1 and rc.inet1.conf. You'd have to add a variable to tell rc.inet1 exactly what interface (real or virtual) you want the variables to apply to, and hack rc.inet1 to check for this variable. It's probably a lot more work than it's worth though. -- It is better to hear the rebuke of the wise, Than for a man to hear the song of fools. Ecclesiastes 7:5 |
| |||
| "Jeff Turley" <jaturley@sbcglobal.net> wrote in message news:y53Lb.22120$P%1.21346301@newssvr28.news.prodi gy.com... > When i say aliass I mean multiple IP addresses for one interface. For > example on eth0 I want to have multiple addresses for example eth0:0 > 192.168.1.1 eht0:1 192.168.1.2 etc. The rcinet1.conf file has no examples > of this type of config in its comments. Thanks Jeff Turley > > # rc.inet1 This shell script boots up the base INET system and # ipchains firewall gateway # ------------------------------------------------------------------ # # Attach the loopback device. echo "Attaching loopback:" ifconfig lo 127.0.0.1 route add -net 127.0.0.0 netmask 255.0.0.0 lo # # Setup Variables echo "Setting system variables:" ipaddr="127.0.0.1" netmask="255.255.255.0" network="127.0.0.0" broadcast="" gateway="" ex_if="eth1" int_if="eth0" int_ip="192.168.1.21" in_net="192.168.1.0/16" # # To use DHCP instead of a static IP, set this value to "yes": DHCP="yes" # Setup the interface: if [ "$DHCP" = "yes" ]; then # use DHCP to set everything up: echo "Attempting to configure eth1 by contacting a Comcast DHCP server, good luck..." dhcpcd -h c-24-15-251-182 $ex_if elif [ ! "$ipaddr" = "127.0.0.1" ]; then # set up IP statically: # Set up the ethernet card: echo "Configuring $ex_if as ${ipaddr}..." ifconfig $ex_if ${ipaddr} broadcast ${broadcast} netmask ${netmask} fi ifconfig $int_if $int_ip broadcast 192.168.1.255 netmask 255.255.255.0 # ------------------------------------------------------------------ # The following is for multicast and named services. Do NOT invoke # unless you are running the NAMED server. echo "Setting up multicast server addresses:" ifconfig $int_if:0 192.168.1.22 broadcast 192.168.1.255 netmask 255.255.255.0 ifconfig $int_if:1 192.168.1.23 broadcast 192.168.1.255 netmask 255.255.255.0 ifconfig $int_if:2 192.168.1.24 broadcast 192.168.1.255 netmask 255.255.255.0 ifconfig $int_if:3 192.168.1.25 broadcast 192.168.1.255 netmask 255.255.255.0 ifconfig $int_if:4 192.168.1.26 broadcast 192.168.1.255 netmask 255.255.255.0 ifconfig $int_if:5 192.168.1.27 broadcast 192.168.1.255 netmask 255.255.255.0 ifconfig $int_if:6 192.168.1.40 broadcast 192.168.1.255 netmask 255.255.255.0 # ------------------------------------------------------------------ # Older kernel versions need this to set up the $ex_if routing table: kversion=`uname -r | cut -f 1,2 -d .` if [ "$kversion" = "1.0" -o "$kversion" = "1.1" \ -o "$kversion" = "1.2" -o "$kversion" = "2.0" -o "$kversion" = " " ]; then route add -net ${network} netmask ${netmask} mss 3584 window 655 36 dev $ex_if fi route add -net 192.168.1.0 netmask 255.255.255.0 mss 3584 window 65536 d ev $int_if # ------------------------------------------------------------------ # The following is for multicast and named services. echo "Adding multicast host routes:" route add -host 192.168.1.22 dev $int_if:0 route add -host 192.168.1.23 dev $int_if:1 route add -host 192.168.1.24 dev $int_if:2 route add -host 192.168.1.25 dev $int_if:3 route add -host 192.168.1.26 dev $int_if:4 route add -host 192.168.1.27 dev $int_if:5 route add -host 192.168.1.40 dev $int_if:6 # ------------------------------------------------------------------ # If there is a gateway defined, then set it up: if [ ! "$gateway" = "" ]; then echo "Adding default gateway:" route add default gw ${gateway} netmask 0.0.0.0 metric 1 fi # End of rc.inet1 Hope you find this useful ... |
| ||||
| Hi, the following rc.inet1 is able to handle ip aliases. It's modified one from a slackware 9.1 rc.inet1.conf has to look like (e.g.): ----------- DEV[0]="eth0" IPADDR[0]="192.168.0.1" NETMASK[0]="255.255.255.0" USE_DHCP[0]="" DHCP_HOSTNAME[0]="" DEV[1]="eth0:0" IPADDR[1]="192.168.0.2" NETMASK[1]="255.255.255.0" USE_DHCP[1]="" DHCP_HOSTNAME[1]="" ----------------------- Comments are welcome. Regards, Nikolas # /etc/rc.d/rc.inet1 # This script is used to bring up the various network interfaces. # # @(#)/etc/rc.d/rc.inet1 9.1 Tue Aug 26 13:34:58 PDT 2003 (pjv) ############################ # READ NETWORK CONFIG FILE # ############################ # Get the configuration information from /etc/rc.d/rc.inet1.conf: .. /etc/rc.d/rc.inet1.conf ###################### # LOOPBACK FUNCTIONS # ###################### # Function to bring up the loopback interface. If loopback is # already up, do nothing. lo_up() { if grep lo: /proc/net/dev 1> /dev/null ; then if ! /sbin/ifconfig | grep "^lo" 1> /dev/null ; then /sbin/ifconfig lo 127.0.0.1 /sbin/route add -net 127.0.0.0 netmask 255.0.0.0 lo fi fi } # Function to take down the loopback interface: lo_down() { if grep lo: /proc/net/dev 1> /dev/null ; then /sbin/ifconfig lo down fi } ###################### # ETHERNET FUNCTIONS # ###################### # Function to bring up an Ethernet interface. If the interface is # already up or does not yet exist (perhaps because the kernel driver # is not loaded yet), do nothing. eth_up() { # If the interface isn't in the kernel yet (but there's an alias for it in # modules.conf), then it should be loaded first: if ! grep $(echo ${DEV[$1]} | sed -e "s/\:.*//"): /proc/net/dev 1> /dev/null ; then # no interface yet if /sbin/modprobe -c | grep -w "alias ${DEV[$1]}" | grep -vw "alias ${DEV[$1]} off" > /dev/null ; then /sbin/modprobe eth${1} fi fi if grep $(echo ${DEV[$1]} | sed -e "s/\:.*//"): /proc/net/dev 1> /dev/null ; then # interface exists if ! /sbin/ifconfig | grep "${DEV[$1]} " 1> /dev/null ; then # interface not up if [ "${USE_DHCP[$1]}" = "yes" ]; then # use DHCP to bring interface up if [ ! "${DHCP_HOSTNAME[$1]}" = "" ]; then /sbin/dhcpcd -t 10 -h ${DHCP_HOSTNAME[$1]} -d ${DEV[$1]} else /sbin/dhcpcd -t 10 -d ${DEV[$1]} fi else # bring up interface using a static IP address if [ ! "${IPADDR[$1]}" = "" ]; then # skip unconfigured interfaces # Determine broadcast address from the IP address and netmask: BROADCAST=`/bin/ipmask ${NETMASK[$1]} ${IPADDR[$1]} | cut -f 1 -d ' '` # Set up the ethernet card: echo "Configuring ${DEV[$1]}:" echo "/sbin/ifconfig ${DEV[$1]} ${IPADDR[$1]} broadcast ${BROADCAST} netmask ${NETMASK[$1]}" /sbin/ifconfig ${DEV[$1]} ${IPADDR[$1]} broadcast ${BROADCAST} netmask ${NETMASK[$1]} else if [ "$DEBUG_ETH_UP" = "yes" ]; then echo "${DEV[$1]} interface is not configured in /etc/rc.d/rc.inet1.conf" fi fi fi else if [ "$DEBUG_ETH_UP" = "yes" ]; then echo "${DEV[$1]} is already up, skipping" fi fi else if [ "$DEBUG_ETH_UP" = "yes" ]; then echo "${DEV[$1]} interface does not exist (yet)" fi fi } # Function to take down an Ethernet interface: eth_down() { if grep ${DEV[$1]}: /proc/net/dev 1> /dev/null ; then if [ "${USE_DHCP[$1]}" = "yes" ]; then /sbin/dhcpcd -k -d ${DEV[$1]} sleep 1 else /sbin/ifconfig ${DEV[$1]} down fi fi } ##################### # GATEWAY FUNCTIONS # ##################### # Function to bring up the gateway if there is not yet a default route: gateway_up() { if ! /sbin/route | grep "^default" 1> /dev/null ; then if [ ! "$GATEWAY" = "" ]; then /sbin/route add default gw ${GATEWAY} metric 1 fi fi } # Function to take down an existing default gateway: gateway_down() { if /sbin/route | grep "^default" 1> /dev/null ; then /sbin/route del default fi } ############ ### MAIN ### ############ case "$1" in 'start') # "start" brings up all available interfaces: lo_up eth_up 0 eth_up 1 eth_up 2 eth_up 3 gateway_up ;; 'stop') # "stop" takes down all existing interfaces: gateway_down eth_down 3 eth_down 2 eth_down 1 eth_down 0 lo_down ;; *) # The default is to bring up all interfaces: lo_up eth_up 0 eth_up 1 eth_up 2 eth_up 3 gateway_up esac # End of /etc/rc.d/rc.inet1 |