3 NIC's are fine, why does adding a fourth break everything?

I have a Redhat 7.1 linux firewall/router with the latest kernel. It successfully routes internet traffic to my internal LAN and also port forwards to port 80 to my DMZ windows 2000 webserver. So I have three fully working Network Cards.

My problem is, I add an extra card, becuase I want to create another separate DMZ, and none of my ADSL connections work, nothing routes properly etc.

It's like, as soon as I stick an extra card in, everything changes: eth0 becomes eth1, eth2 becomes, eth3 (for example)! Why does all this shuffling occur?

Thankyou in advance!


 
nathanheathdaviesAsked:
Who is Participating?
 
majorwooConnect With a Mentor Commented:
but back to the problem...

you can just add the new card, and configure the scripts yourself you dont need to remove them all (but if you do your right, kudzu will sort out most of it for you)

(just add them all at once so you dont have the same problem again)
0
 
mbarbosCommented:
Because the order the NICs are named depends on the type of the NICs (the order the kernel tests for the devices or the order modules are loaded) and also of the position of the NICs in the slots
0
 
majorwooCommented:
edit your /etc/modules.conf file after you add the device and put it back the way it was (or if you put the new NIC in the PCI slot furthest from the AGP slot it will probably pick it up last)

alias eth0 eepro100
alias eth1 3c59x
alias eth2 3c59x

if your /etc/modules.conf looked like that before, just make sure the new device gets set to eth3

alias eth0 eepro100
alias eth1 3c59x
alias eth2 3c59x
alias eth3 new_module

instead of
alias eth0 new_module
alias eth1 eepro100
alias eth2 3c59x
alias eth3 3c59x
0
[Webinar] Kill tickets & tabs using PowerShell

Are you tired of cycling through the same browser tabs everyday to close the same repetitive tickets? In this webinar JumpCloud will show how you can leverage RESTful APIs to build your own PowerShell modules to kill tickets & tabs using the PowerShell command Invoke-RestMethod.

 
nathanheathdaviesAuthor Commented:
But what if all of my cards are the same, so I get all the same device names, how is one meant to tell the difference between them. I just whish there was a way to know exactly which card was which.
0
 
mbarbosCommented:
The difference is in the way they are discovered, which has something to do with the slots they are in.
If the cards are all of the same kind, then just simply change the patch cords to suit the new cofiguration. You can also change the slots and find out what is the order in which your PCI slots are discovered (it also depends on the BIOS settings, but you can not always set the interrupts and address routing for the PCI slots) and then install the cards so that a new card will get the next eth number, not one already used.
0
 
mbarbosCommented:
Oh, you don't get the same device name for 2 different cards, no matter if thea are of the same kind or not (unless you have areally broken kernel/modules).
0
 
nathanheathdaviesAuthor Commented:
Sorry, I meant the name of the module bit after the:

alias eth2 module
              ^_____________here
0
 
nathanheathdaviesAuthor Commented:
please ignore where the formatting of the previous post positioned my arrow diagram! I mean, the 'module' name. :)
0
 
nathanheathdaviesAuthor Commented:
please ignore where the formatting of the previous post positioned my arrow diagram! I mean, the 'module' name. :)
0
 
nathanheathdaviesAuthor Commented:
please ignore where the formatting of the previous post positioned my arrow diagram! I mean, the 'module' name. :)
0
 
majorwooCommented:
if you place this card at the bottom of the PCI slot stack (as far from the AGP as possible) it should be detected last.
0
 
majorwooCommented:
exactly what card is it? what module are you using? In some cases you can specify an options line to the card to setup which card uses which
0
 
mbarbosCommented:
The "module" is the name of the driver that for that card. You get after that some "ethx" interfaces. the "x" is given by the phisical position of the card. I the cards need different modules (drivers) the will get the x first by the order the drivers are loaded and than by the positio in the machine. The order is deterministic, so all you have to do is to see which phisical card gets which name.
0
 
mbarbosCommented:
Not necessarily, majorwoo. PCI is almost fully mapable (I'm not a natve english speaker, forgive my spelling and the rest). IMHO the best way (still) is to move patch cords around :)
0
 
majorwooCommented:
moving the cords is the quick and dirty solution ;-) (and yes its what I did when i added another card to my machine)

but if he really wants to do it another way, i promise at some point in the script we can hack it up to do it his way

;-)

(english looked good to me!)
0
 
nathanheathdaviesAuthor Commented:
I might try physically removing every card from the machine. I will then boot and remove all configurations, then reboot and add all of the cards again. I will boot up and configure the cards through the kudzu configurator (or just provide the network-scripts file) and maybe my machine can stop suffering from psycosis. Then I will try moving my cords around, trying every possible combination.
If it doesn't work then, I will kill myself.
Can I give both of you points? I have gained excellent ideas out of both of you.
0
 
majorwooCommented:
got this out of community support:

1) How to split points -> Ask Moderator assistance in Community Support with a zero point question and the question link (include whom you wish to award what point values).  If the original question value is OK as is, award one expert in the primary question directly, and post a new one in that same topic area, for the other expert(s) you wish to award.  Here's how
  a)  Title = Points for __expertname)__
  b)  Comments = Paste the link (URL) to the primary question for which points are being given.
  c)  Expert then responds and you accept that response to grade and close it.
0
All Courses

From novice to tech pro — start learning today.