Hopefully my title is correct. Any way, we have several sites and they sell, for the most part, different things. They're all hosted by the same hosting company, so the IP addresses are identical or off by a number or two (depending on the server). The different sites have links to each other. Is that bad for SEO, different sites appearing to come from the same IP (with links to each other)? Also, if we have more than one URL pointing to our main URL (via 301 redirect) is that bad for SEO? Thanks.
Yes, it is considered a "link scheme" that is explained in the Google Webmaster Guidelines, regardless of what your real intentions are. I suggest using the nofollow tag on all those cross links.
So, if I have different URL's on different hosts, and they point to my main URL, that's bad SEO? So, if I sell Soda, and have soda.com, drink-soda.com, we-sell-soda.com, etc., etc., not to mention .nets, .orgs, etc., etc., and they point to my main-soda.com site, that's going to get me penalized by Google?
As long as your sites do not interlink too much and there are not too many you should be okay. You can run into trouble when you have hundreds of sites all linking to each other. In that case its likely that you will not be penalized, but those links will not pass any value.